Skip to content

Releases: PatrickJnr/crapcleaner

v1.0.11: Engineering audit implementation: correctness and safety fixes, a modular GUI views package, faster duplicate hashing and storage analysis, wider cleanup coverage, and machine-readable CLI progress

Choose a tag to compare

@github-actions github-actions released this 19 Aug 04:04

Engineering audit implementation: correctness and safety fixes, a modular GUI views package, faster duplicate hashing and storage analysis, wider cleanup coverage, and machine-readable CLI progress.

Fixed

  • Duplicate cleanup category IDs: directx_shader_cache now has a single owner (Windows provider) and the .NET provider's JetBrains entry became resharper_caches, so no two categories share an ID or scan the same path twice. Enforced by tests.
  • Individual file cleanup targets: a target pointing at a single file (stray .pyc files) is now sized, previewed, and deleted correctly through the normal pipeline instead of being silently skipped.
  • Platform-specific categories: Windows-only targets are no longer registered on Linux and vice versa. This covers the application providers (winget, Chocolatey, Scoop vs apt, dnf, pacman, Flatpak, Snap) and the Windows system provider, so a Linux install no longer lists Prefetch, CBS logs, or Windows TEMP. Emptying the trash stays available on both platforms.
  • Windows drive formatting: drive letters render one colon (Drive C:), Linux mount points are printed unchanged.
  • Storage analyzer traversal: the analyzer uses the shared reparse-point guard and skips junctions and symlinks instead of resolving through them, so data that lives on another volume is never billed to the scanned drive.
  • Recursive CSV storage export: a list-rooted storage report now exports every descendant instead of stopping at the top level.
  • Linux storage health: capacity comes from byte-accurate lsblk -b output and free space is correlated through the device's mount point. An unmounted device keeps its real capacity rather than reporting zeros.
  • Cold cleanup preview reported zero: crapcleaner --cleanup-preview runs without a prior scan, so categories that discover their targets through a finder (__pycache__, stray .pyc, Python tool caches, AI models) previewed as empty while the cleanup would have removed thousands of files. The preview now resolves those finders when no scan data exists.
  • Blank volume label and filesystem on Windows: PC Specs printed drives with no label or filesystem because get_drive_info never queried them. Both now come from GetVolumeInformationW, and a drive that cannot be queried reports blank rather than a placeholder.
  • Ruff and mypy: both pass with zero errors across the package, with no suppressions or broad Any casts added.
  • PyInstaller packaging: stale hidden imports were replaced with modules that actually exist, and onedir builds a real folder distribution (EXE + COLLECT) instead of silently producing a onefile build. Both build scripts pass their mode through and report the matching output path.

Added

  • Running-browser detection before cleanup: one process listing identifies every relevant browser; the confirmation dialog, status bar, and CLI warn that locked cache files will be skipped. Browsers are never terminated, and a cleanup that skipped locked files is reported as partial rather than complete.
  • Wider browser coverage: Thorium on Windows and Linux, Floorp on Linux, alongside the existing Chromium and Firefox derivatives. Only cache directories are targeted.
  • Wider developer cache coverage: shared sccache and Zig compiler caches, project-local .ruff_cache, .mypy_cache, .pytest_cache, and .tox folders discovered through the existing single scan-root walk, and the Docker Buildx cache exposed as a confirmed docker buildx prune action rather than a file delete.
  • Vendor-neutral GPU telemetry: AMD and Intel load, temperature, and VRAM through Linux DRM sysfs, NVML retained for NVIDIA, and any Windows display adapter contributing its name and VRAM size. A metric the hardware does not expose is shown as N/A instead of a fabricated zero.
  • Wider local AI model discovery: Jan.ai, ComfyUI, and text-generation-webui model stores in their conventional locations. Models remain inspection-only and are never auto-selected.
  • --progress-jsonl streaming CLI progress: scans and cleanups emit one standalone JSON object per line covering start, per-category progress and results, warnings, errors, cancellation, and completion (including a partial flag). Standard output is unchanged without the flag.

Changed

  • GUI views modularized: the 9,000-line gui/views.py became a gui/views/ package with one module per major view plus a shared widgets module. Public imports and lazy view creation are unchanged.
  • Centralized subprocess execution: run_command returns a typed CommandResult with consistent timeout, working-directory, and environment handling, and every capturing subprocess call site now goes through it, so a failed command can never look like empty-but-successful output.
  • Parallel duplicate hashing: full SHA-256 hashing runs on a bounded worker pool and consumes results in submission order, keeping grouping deterministic while staying responsive to cancellation.
  • Scan cache invalidation: continuously rewritten groups (browser caches, Windows Temp) use a short TTL so a stale entry cannot outlive its data, while static categories keep the full TTL.
  • On-demand storage drill-down: navigating past the analyzed depth measures that folder in a worker and keeps the result, instead of requiring a slower whole-drive pass at a higher depth.

v1.0.10.1: Theme Studio performance optimization, Windows config locking resilience, and release title automation

Choose a tag to compare

@github-actions github-actions released this 18 Aug 18:57

Theme Studio performance optimization, Windows config locking resilience, and release title automation.

Fixed

  • Theme Studio Slider Performance & Lag: optimized live theme preview rendering by updating only the actively visible tab (_update_active_view) during drag events, reducing per-drag setStyleSheet and contrast calculation overhead by over 95%. Bypasses redundant SVG icon and button restyling during active sliding and tunes the application debounce timer to 220ms for fluid 60+ FPS interaction.
  • Windows Config Lock Collision (PermissionError: [WinError 5]): resolved access denied errors during rapid settings saves by eliminating redundant duplicate saves in custom theme builder and implementing PID/nanosecond unique temporary files, exponential retry backoff, and direct-write fallbacks in save_settings.

Added

  • Automated Descriptive GitHub Release Titles: enhanced scripts/extract_changelog.py and .github/workflows/release.yml to automatically extract release headlines from CHANGELOG.md and populate descriptive release titles during GitHub Actions publication.

v1.0.10: Custom Theme Studio & Perceptual Color Engine

Choose a tag to compare

@github-actions github-actions released this 18 Aug 18:06

Custom Theme Studio release: perceptual color theory engine, 6 harmony mood styles, 15 designer presets, magic dice generator, JSON theme import/export, and dedicated Settings sub-navigation tabs.

Added

  • Custom Theme Studio: introduces a dedicated workspace inside Settings enabling users to design, fine-tune, and apply personalized themes without manual configuration of dozens of individual hex codes.
  • Perceptual Color Theory Engine (color_engine.py):
    • Implements hue-dependent brightness bias compensation (hue_lightness_bias) and perceptual lightness tuning, ensuring high-luminance hues (amber, yellow, lime) avoid blinding glare while deep blues and violets maintain rich vibrancy.
    • Enforces strict WCAG 2.1 AA/AAA contrast guidelines (minimum 7:1 text contrast and 4.5:1 UI contrast) with automated lightness correction (ensure_contrast).
    • Generates complete 27-token palettes mapping chosen signature colors across stratified background levels (window, panel, surface, surface2, elevated, border, border2), semantic states (success, warning, danger, review, info, selection), and typography.
  • 6 Palette Harmony Mood Styles:
    • Cohesive (default balanced surface tinting with 14% primary saturation)
    • Vibrant (high-energy saturated surfaces and neon accents)
    • Muted (subdued slate undertones for low-profile visual focus)
    • OLED Pure (true #000000 deep black canvas with stratified dark panels and glowing accent highlights)
    • Pastel (soft, airy low-saturation tones)
    • Minimal (clean monochromatic neutral greys with single accent focus)
  • 15 Curated Designer Color Presets: one-click curated palettes (Sapphire Blue, Emerald Forest, Cyber Violet, Sunset Amber, Crimson Velvet, Rose Gold, Hyper Cyan, Deep Slate, Mint Sage, Solar Orange, Royal Indigo, Cherry Blossom, Arctic Frost, Matrix Lime, Espresso Gold).
  • Color Harmonies & Magic Dice Generator:
    • generate_color_harmonies computing Analogous ($H \pm 30^\circ$), Complementary ($H + 180^\circ$), Triadic ($H \pm 120^\circ$), and Split-Complementary variations.
    • "Surprise Me (Magic Dice)" rolling harmonious, randomized palettes across curated hues and mood formulas on demand.
  • Theme JSON Export & Import:
    • Serialization and parsing tools (export_custom_theme_json, import_custom_theme_json) with clipboard copy and modal import dialog for sharing themes.
  • Interactive Multi-View Live Preview:
    • Live preview card featuring switchable views: Mockup Overview, Clean-up Queue Table, and 27-Token Palette Matrix with live contrast ratio badge meter (AAA, AA, LOW).
  • Dedicated Sub-Navigation Tabs in Settings:
    • Clean separation into Theme Gallery and Custom Theme Studio, providing full viewport height for both browsing 40+ built-in themes and designing custom themes.
    • Added "Custom Studio" shortcut button on the active theme hero banner.

Fixed

  • Table Column Sorting Recursion Error: resolved RecursionError in PySide6 NumericItem during table column sorting by isolating numerical sort values to Qt.ItemDataRole.UserRole + 99 and handling string fallbacks safely.
  • Mnemonic Accelerator Underscore Artifacts: escaped ampersands in button labels (Apply && Save Custom Theme) and enforced Qt.TextFormat.PlainText on labels to prevent unwanted mnemonic accelerator parsing.
  • Live Theme Application on Color Pick: instant real-time visual application across the entire application upon selecting a color or changing tuning sliders.

Full Changelog: v1.0.9.1...v1.0.10

v1.0.9.1: Python 3.10 & 3.11 Source Installation Hotfix

Choose a tag to compare

@github-actions github-actions released this 18 Aug 00:21

Source installation fix for Python 3.10 and 3.11.

Fixed

  • Import Failure On Python 3.10 And 3.11: computes the installer account name outside the f-string in crapcleaner.system.backends.updates_windows. A backslash inside an f-string expression is a syntax error before Python 3.12, so that module could not be imported on the older interpreters this project supports, and the System Updates page raised on Windows before it could report anything. The published 1.0.9 executables bundle their own Python 3.12 and are unaffected; this reaches installations made from source with pip, uv, or a checkout.
  • Linter Coverage Of The Update Backend: ruff stops at the first syntax error in a file, so the rest of updates_windows.py had never been checked. It is linted and formatted with the rest of the codebase now.

Changed

  • File-Type Analysis Wording: corrects the 1.0.9 note about where file sizes come from. On Windows the directory listing carries the size and reading it from the entry costs nothing; on Linux the entry still needs a stat, though one relative to the open directory rather than a fresh resolution of the whole path. The improvement is real on both, and largest on Windows.

Internal

  • Cross-Platform Test Corrections: three tests asserted Windows-specific behaviour and failed on the Linux side of the CI matrix. The services badge now takes its noun from the view rather than hard-coding services, since the page correctly reads units under systemd; the XDG autostart fixture redirects the system directory as well as the user one, so a listing no longer includes whatever the host distribution installed; and the file-type analysis test asserts that stat calls do not scale with file count rather than requiring an exact count, which differs between platforms.

Full Changelog: v1.0.9...v1.0.9.1

v1.0.9: Platform-Aware Architecture (Windows & Linux)

Choose a tag to compare

@github-actions github-actions released this 17 Aug 23:59

Platform-aware architecture release: Startup, Services, and System Updates managers that adapt to Windows or Linux, plus cross-platform App Updates.

Added

  • Platform Capability Registry: introduces crapcleaner.system.capabilities, the single source of truth for which system-management features the running operating system provides and what each one is called there. The navigation rail, the page set, the view headings, and the CLI all read from it, so no user-facing code branches on the operating system. Supporting another platform means adding backend modules and one registry entry per capability.
  • Platform-Neutral Dispatchers & Per-OS Backends: splits the startup, service, and update managers into a shared dispatcher holding the data model, cache, and safety rules, over a backend per operating system in crapcleaner.system.backends. Platform dependencies stay inside their own backend: winreg, PowerShell, and sc.exe appear only in the Windows modules, and systemctl, pkexec, and package-manager commands only in the Linux ones.
  • Linux Service Management via systemd: adds full parity with the Windows Services page for systemd, listing both system and user units with their active state and unit-file state, and offering start, stop, restart, and enable/disable/mask. System units elevate per command through pkexec so the application need not run as root, and units that keep a session alive - dbus, systemd-logind, polkit, user@, getty@ - are guarded the same way critical Windows services are.
  • Linux System Updates: adds distribution update management through apt, dnf/yum, pacman, and zypper, reporting pending updates with security errata marked, recent package history, and whether a reboot is pending.
  • Linux Startup Entry Management: completes XDG autostart support with enable, disable, and remove alongside the existing listing. A user entry shadows the packaged entry of the same name, and disabling or removing a system entry in root-owned /etc/xdg/autostart writes a user-level override that hides it rather than touching a file the package manager owns.
  • Graceful Handling of Unsupported Features: pages whose platform tooling is absent are hidden rather than shown broken, a navigation section whose entries are all unavailable is omitted, and every dispatcher entry point returns the registry's explanation instead of letting a platform command fail. A Linux system without systemd shows no Services page at all.
  • Platform-Filtered Memory Actions: offers only the reclamation actions the running kernel provides, so Windows lists the standby list purge and Linux lists the filesystem cache drop. Each action's description names the exact call that system will make - EmptyWorkingSet on Windows, malloc_trim and drop_caches on Linux - rather than listing every platform's mechanism at once. Requesting a hidden action by id still reports why it is unavailable instead of an unknown-action error.
  • --capabilities CLI Flag: reports which platform features the current operating system supports, with --json for automation.
  • Linux Privilege Escalation: teaches elevate() and relaunch_as_admin() to use pkexec, and reports administrative rights on Linux from the effective user id rather than assuming every non-Windows user is privileged.
  • Windows Startup Manager: introduces a dedicated Startup Applications manager that allows users to view, enable, disable, add, and remove programs and scripts configured to launch automatically with Windows. Inspects Current User and All Users Registry Run/RunOnce keys, modern StartupApproved flags, and user/system Startup folders with intelligent publisher discovery and boot impact estimations.
  • Windows Update Manager: adds comprehensive Windows Update inspection and management via PowerShell COM APIs (Microsoft.Update.Session). Displays pending update titles, KB IDs, severity levels, download states, package sizes, and support URLs, initiates update downloads and installations with administrative elevation enforcement, and provides complete installed hotfix history auditing.
  • Windows Services Manager: introduces interactive background service management enabling users to view, start, stop, restart, and configure startup types (Automatic, Automatic (Delayed Start), Manual, Disabled) for all installed Windows services. Features safety guardrails protecting critical OS services from accidental stoppage or disablement, multi-criteria filtering, and one-click access to the system management console (services.msc).
  • App Updates via Package Managers: adds a cross-platform application update manager (crapcleaner.system.package_managers) that detects the package managers installed on the current system and reports every available application upgrade in one place. Supports winget and chocolatey on Windows and apt/apt-get, flatpak, snap, pacman, and dnf/yum on Linux, with a two-minute result cache, live search, and per-manager filtering. Upgrades run one package at a time, across a multi-row selection, or across an entire manager, and a queued selection continues past any package that fails. Installers are allowed 30 minutes for a single package and 2 hours for a whole-manager upgrade, since large IDE, SDK, and creative-suite installers routinely run for many minutes.
  • Column-Accurate Package Manager Parsing: reads winget upgrade output using the column offsets declared in its own header, so a value that exactly fills its column, and is therefore separated from the next by a single space, still yields a usable package ID and version.
  • Friendly Windows Error Explanations: introduces crapcleaner.utils.windows_errors, translating raw 0x8024xxxx Windows Update and servicing failure codes into a plain-language title and remediation hint instead of surfacing the bare hexadecimal code.
  • New Sidebar Navigation & Material Icons: adds Startup Apps, Services, App Updates, and System Updates to the left navigation rail under the System tier, carrying the rocket_launch, tune, and system_update Material Icons, dynamically recoloured for each of the 43 theme palettes. The icon map also gains miscellaneous_services, play_arrow, and stop for use in the service control surfaces.
  • Platform-Aware Navigation Rail: teaches the sidebar to accept the set of pages the running platform actually provides, and to take each label from the capability registry so a page reads Windows Services on Windows and systemd Services on Linux.
  • CLI Management Options: adds --startup, --services, and --system-updates command-line flags with full --json export support for headless automation and terminal diagnostics. --windows-updates remains accepted as an alias.
  • Sortable Table Header Hover Feedback: adds a QHeaderView::section:hover style across all 43 themes so sortable column headers visibly respond before they are clicked.
  • Shared Visual Effects Toolkit: introduces crapcleaner.gui.effects with an animated count-up label, a history sparkline, a proportional segmented bar, and hover-depth and accent-glow helpers. Every colour resolves from a palette token, so all 43 themes are covered without per-theme code, and every animation honours the Reduce motion preference by landing on its final value instead of easing to it. Depth is split deliberately: widgets that repeat inside a scroll area use a painted hover, because a QGraphicsEffect renders through an offscreen pixmap that disables subpixel text antialiasing, while a real drop shadow is reserved for single hero surfaces.
  • Live Vitals Sparklines: draws a rolling 60-sample history under the Memory, Processor, Graphics, and Network cards on the Dashboard. The strips are fed from the vitals tick the Dashboard already runs, so no card owns a timer. Percentages plot against a fixed 0–100 ceiling for comparability over time, and network throughput auto-scales to its own peak.
  • Reclaimable Breakdown Panel: fills the empty lower third of the Dashboard with a proportional bar and the top categories by size, coloured by safety level. Before a first scan it lists the category groups a scan would check, so the panel is informative rather than blank on a fresh install.
  • Counting Headline Figures: eases the reclaimable total on the hero card and in the breakdown panel up to its new value when a scan completes.

Changed

  • Faster CLI Quick Scan: limits the --quick scan to the first five non-administrative, default-selected categories and caps it at 200 files, so a terminal health check returns promptly.
  • Platform-Neutral Storage Presets: resolves the Storage Breakdown preset buttons through the stdlib and the platform helpers, so Temp points at the real temporary directory and AppData becomes App Config pointing at $XDG_CONFIG_HOME on Linux.
  • Deprecated Windows-Flavoured Names: crapcleaner.system.windows_updates, WindowsUpdateItem, WindowsUpdateReport, WindowsUpdateView, WindowsUpdateWorker, WindowsUpdateInstallWorker, and open_services_msc remain importable as aliases of their platform-neutral replacements in system_updates, SystemUpdatesView, SystemUpdateWorker, SystemUpdateInstallWorker, and open_services_console.

Fixed

  • Windows Junctions Followed During Scanning And Cleanup: skips reparse points during every filesystem traversal. A Windows directory junction reports itself as an ordinary directory through S_ISLNK, os.path.islink, and DirEntry.is_dir(follow_symlinks=False), so the only reliable signal is its reparse tag, which nothing checked. A junction loop therefore recursed until the file budget ran out, counting the same files repeatedly and truncating the result, and a junction pointing outside the scanned tree presented unrelated files as reclaimable junk. crapcleaner.utils.files.walk_safe now back...
Read more

v1.0.8.1: Astral uv Build Scripts & Packaging Updates

Choose a tag to compare

@github-actions github-actions released this 17 Aug 17:27

Astral uv build and development scripts, dependency lockfile, and documentation updates.

Added

  • Astral uv Build & Run Scripts: adds scripts/builduv.sh and scripts/runuv.sh for fast virtual environment bootstrapping, automated dependency synchronization, and PyInstaller binary compilation using Astral uv.
  • Dependency Lockfile (uv.lock): introduces uv.lock for deterministic, reproducible dependency resolution across environments while preserving the existing pip/venv workflow.

Documentation

  • Updated Setup & Run Guides: expands README.md with uv-based workflow instructions for local execution, development, testing, and executable builds alongside standard pip commands.

What's Changed

  • Add UV support in build scripts by @Foxils in #6

Full Changelog: v1.0.8...v1.0.8.1

v1.0.8: Extended Theme Set & Standalone Executable Builds

Choose a tag to compare

@github-actions github-actions released this 16 Aug 22:44

Help & Safety modal dialog architecture, sidebar reorganization, sponsorship integration, and standalone packaging fixes.

Added

  • Help & Safety Modal Dialog: introduces HelpSafetyDialog, a dedicated modal window housing the comprehensive 9-part safety philosophy, technical documentation, troubleshooting guide, live FAQ search, category filter chips, and one-click system diagnostics copier.
  • Global Help & Documentation Access: adds global F1 shortcut trigger, sidebar "Safety First" footer card action buttons, and direct About view links to open the Help & Safety modal dialog from anywhere in the application.
  • GitHub Funding Configuration: adds .github/FUNDING.yml configuration supporting GitHub Sponsors, Ko-fi, Buy Me a Coffee, and custom PayPal donation endpoints.
  • PyInstaller Packaging Specification (CrapCleaner.spec): introduces a dedicated spec file collecting all crapcleaner subpackages, assets, and PySide6 Qt6 platform plugins, resolving standalone executable packaging across Windows and Linux.

Changed

  • Sidebar Navigation Reorganization: streamlines the left navigation rail into four logical, ordered tiers (Overview, Deep Scan, System, and Preferences), placing Settings and About at the bottom of the navigation rail for intuitive desktop navigation.
  • Drive Usage Donut Theme Palette Integration: renders the Dashboard storage capacity ring using the active theme's accent color (pal["accent"]), replacing the diagonal linear gradient for consistent visual cohesion across all 43 themes.
  • Contributor Card Layout: bounds community contributor cards to a proportional maximum width in a balanced two-column grid.

Fixed

  • PyInstaller Standalone Executable Packaging: resolves ModuleNotFoundError: No module named 'crapcleaner.gui' in compiled Windows and Linux release binaries by updating release workflows to use full package installs and CrapCleaner.spec.

Full Changelog: v1.0.7.1...v1.0.8

v1.0.7.1: UI Performance & Visual Smoothing Hotfix

Choose a tag to compare

@github-actions github-actions released this 16 Aug 20:11

Theme additions and worker lifecycle stability patch.

Added

  • Adwaita Themes: adds GNOME-inspired Adwaita Dark (neutral dark surfaces with restrained blue accents) and Adwaita Light (clean light surfaces with understated blue accents) color palettes, expanding the theme gallery to 43 curated themes.
  • Dynamic Theme Category Counts: calculates theme category counts dynamically in the Theme Gallery filter chips (Modern Dark (7), Light & Pastel (5), Retro & Vintage (8), Cyber & Synth (4), Code Palettes (8), Warm & Nature (11)).

Fixed

  • Worker Thread Internal C++ Object Deletion: resolves Shiboken RuntimeError: libshiboken: Internal C++ object (...) already deleted when re-triggering storage health diagnostics (refresh_health), hardware queries (refresh_specs), storage analysis (run_analysis), or memory actions by introducing is_worker_running and stop_worker safe lifecycle helpers and automatically clearing finished worker references.

What's Changed

  • Add Adwaita light and dark themes by @Foxils in #5

Full Changelog: v1.0.7...v1.0.7.1

v1.0.7: Quality of Life, Scan Insights & Stability

Choose a tag to compare

@github-actions github-actions released this 16 Aug 19:01

Quality of Life, Scan Insights, and Stability release.

Added

  • Scan Insights & Space Recommendations: adds an interactive ScanInsightsWidget directly in the Deep Cleanup view providing immediate visual breakdowns of safe vs reviewable reclaimable space, top storage-consuming categories, and actionable recommendations.
  • Storage Analyzer Quick-Access Bookmarks: introduces a one-click directory favorites bar in the Storage Breakdown view (Home, Downloads, Documents, AppData / .config, Temp, Videos) for instant storage exploration without manual folder browsing.
  • Async Worker Thread Lifecycle & Stability: introduces strict QThread lifecycle management across all async inspectors (SpecsWorker, HealthWorker, StorageAnalysisWorker, MemoryReportWorker, MemoryActionWorker), ensuring clean thread termination, graceful parent widget destruction, and zero headless CI/Windows access violations.
  • Theme Fade Transition Polish: optimizes UI theme cross-fades by safeguarding against widget and animation double-deletion, with resilient fallback handling in headless and virtual display environments.

Improved

  • Hardware & GPU Detection: enhances GPU and VRAM introspection across Windows and Linux platforms with robust error handling for hybrid multi-GPU setups and virtual display environments.
  • Test Suite Teardown & Isolation: adds automated Qt top-level widget and thread cleanup fixtures in pytest, ensuring 100% test isolation and zero cross-test event leaks.

What's Changed

  • Enhance scan insights and storage favorites by @Foxils in #4

Full Changelog: v1.0.6...v1.0.7

v1.0.6: Hardware Specs & Storage Health Diagnostics

Choose a tag to compare

@github-actions github-actions released this 16 Aug 17:16

Theme Gallery and Preferences redesign release.

Added

  • Visual Theme Gallery: replaces the plain dropdown with an interactive visual gallery displaying all 41 themes. Features real-time 5-color swatch bars, active theme preview banner, category filter chips (Modern Dark, Light & Pastel, Retro & Vintage, Cyber & Synth, Code Palettes, Warm & Nature), live search filtering, "Surprise Me" randomizer, and default reset.
  • Live System Vitals Dashboard: introduces zero-overhead real-time telemetry cards on the Dashboard for Network bandwidth (download & upload transfer rates, session transfer totals, and active connection adapter), RAM utilization with dynamic high-memory pressure alerts and quick Memory Cleaner access, real-time multi-core CPU load, GPU temperature monitoring & VRAM utilization, and live system uptime with fluid OutCubic animated transitions.
  • Hardware Specs Skeleton Loading: renders modern animated pulsing skeleton placeholder cards across the PC Specs view during async hardware, GPU, and SMART sensor queries, eliminating empty layout states.
  • Overhauled Memory Cleaner View & Kernel Cache Purging: redesigns the Memory Cleaner view with a high-impact Hero status banner, 2-column hardware vitals, and a multi-tier memory flush engine. Supports multi-pass process working set trimming (psapi.EmptyWorkingSet) for standard users, alongside one-click administrator elevation to purge the Windows kernel standby list (priorities 0–7), modified page list, and system file cache.
  • Segmented Settings Architecture: organizes Preferences & Configuration into dedicated sub-tabs (Appearance & Themes, Safety & Protection, Exclusions & Roots, Scan Performance, Category Rules, Backup & Sync) with sticky top actions and quick-tuning performance presets.
  • Pure Material Icon Typography & View Upgrades: renders crisp Google Material Icons dynamically colored to match the active theme palette across all preferences, action buttons, category chips, and toolbar controls in every view, alongside real-time active scanning indicators.

Changed

  • Branding consistency: standardizes application title and branding to pure CrapCleaner, removing legacy comparison references.

Full Changelog: v1.0.5...v1.0.6