Skip to content

Latest commit

 

History

History
159 lines (126 loc) · 5.7 KB

File metadata and controls

159 lines (126 loc) · 5.7 KB

Changelog

All notable changes to PortDoctor will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

3.0.0 - 2025-11-06

Added - Process Management Features

  • Process Listing: View all processes with CPU, RAM, GPU usage

    • portdoctor process list - List all processes
    • Filter by user processes only (--user)
    • Sort by CPU, memory, GPU, name, or PID (--sort)
    • Limit to top N processes (--top)
    • Filter by name pattern (--filter)
  • Process Information: Detailed process inspection

    • portdoctor process info <pid> - Comprehensive process details
    • Shows CPU, memory, GPU usage, uptime
    • Displays command line, executable path, open ports
    • Indicates system process status and safety
  • Safe Process Killing: Smart termination with protection

    • portdoctor process kill <pid> - Kill specific process
    • portdoctor process kill-high - Kill high-usage processes
    • portdoctor process kill-name <pattern> - Kill by name with wildcards
    • System process whitelist (40+ critical processes)
    • Path and user validation
    • Immutable protection even with force flag
  • Real-Time Monitoring: Live system and process monitoring

    • portdoctor process monitor - Real-time dashboard
    • System overview (CPU, memory, uptime)
    • Top processes by CPU and memory
    • Configurable refresh interval
    • Color-coded resource bars
  • Process Tree: Hierarchical process visualization

    • portdoctor process tree - Show process hierarchy
    • Parent-child relationships with tree characters
    • Resource usage per process
    • User-only filtering
    • PID highlighting
  • Export & Reports: Process data export

    • portdoctor process export --json - JSON export
    • portdoctor process export --csv - CSV export
    • User-only filtering
    • Timestamped filenames
    • System snapshots

Added - Core Infrastructure

  • Resource Monitoring Module: Cross-platform metrics collection

    • CPU, memory, GPU usage tracking
    • 1-second caching for performance
    • Request deduplication
    • Uptime calculation
    • Memory formatting (MB/GB)
  • Safety Checker Module: System process protection

    • Windows system process whitelist
    • Unix/Linux system process whitelist
    • Path validation (System32, /sbin, etc.)
    • User validation (NT AUTHORITY\SYSTEM, root, etc.)
    • PID range checks
  • Table Formatter Utility: Beautiful CLI output

    • Auto-width calculation
    • Color-coded values
    • Resource bars
    • Summary boxes
    • ANSI code handling

Changed

  • Updated package version to 3.0.0
  • Enhanced description to include process management
  • Added new keywords: process-manager, task-manager, system-monitor, resource-monitor
  • Improved CLI help text and command organization

Dependencies

  • Added cli-table3 (^0.6.3) for advanced table formatting
  • Added systeminformation (^5.21.0) for cross-platform system metrics

Technical Improvements

  • Request deduplication to prevent concurrent system calls
  • Parallel fetching for 30-40% faster performance
  • PID validation on all inputs
  • Error logging with descriptive messages
  • Graceful degradation for missing data
  • Cache management and cleanup
  • Production-hardened error handling

2.0.0 - 2025-11-06

Added

  • List Command: View all ports currently in use with portdoctor list
  • Multiple Ports Support: Kill multiple ports at once (e.g., portdoctor 3000,8080,5000)
  • Port Range Support: Kill port ranges (e.g., portdoctor 3000-3010)
  • Interactive Mode: Visual checkbox selection interface with portdoctor interactive
  • Watch Mode: Continuously monitor and auto-kill processes with portdoctor watch <port>
  • Info Command: Get detailed process information with portdoctor info <port>
  • Report Generation: Export port usage as JSON or CSV with portdoctor report --json|--csv
  • Dev Preset: Quick command to kill common dev ports with portdoctor dev
  • Process Details: Display command line, memory usage, and start time
  • Port Scanner: Core module to scan all ports in use on the system
  • Enhanced README: Added badges, comprehensive documentation, and examples
  • Contributing Guidelines: Added CONTRIBUTING.md for contributors
  • Changelog: Added this changelog file

Changed

  • Updated CLI architecture to support multiple commands
  • Improved error handling across all commands
  • Enhanced output formatting with better tables and summaries
  • Updated package keywords for better discoverability

Technical

  • Added 8 new command modules (list, multiple, range, interactive, watch, info, report, presets)
  • Added scanner module for system-wide port detection
  • Added details module for extended process information
  • Upgraded version to 2.0.0

1.0.0 - 2025-11-06

Added

  • Initial release of PortDoctor
  • Single port detection and killing
  • Cross-platform support (Windows, macOS, Linux)
  • Force mode (--force flag)
  • Silent mode (--silent flag)
  • Action logging to ~/.portdoctor/history.log
  • Color-coded output with chalk
  • Animated spinners with ora
  • Interactive confirmation prompts
  • Comprehensive README documentation
  • MIT License
  • Professional project structure

Features

  • Detect processes using specific ports
  • Kill processes with confirmation
  • Platform-specific command execution (netstat/lsof, taskkill/kill)
  • Persistent logging of all operations
  • Beautiful terminal output
  • Error handling and validation