Skip to content

Release v1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 26 Nov 14:57

Changelog

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

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

1.0.0 - 2025-11-26

Added

  • ✨ Full cross-platform support (Linux, macOS, BSD, Windows)
  • 🎨 Colored terminal output using owo-colors
  • 🔧 Shell completion generation for bash, zsh, fish, powershell, elvish
  • 🆕 --status flag for custom timeout exit codes
  • 🆕 --no-notify flag to skip initial signal (Unix)
  • 🆕 --generate-completions flag for shell completion generation
  • 📊 JSON metrics output via TIMEOUT_METRICS environment variable
  • 🛡️ PR_SET_PDEATHSIG for orphan prevention on Linux
  • ⚡ Event-driven architecture with SIGCHLD (zero polling)
  • 🪟 Native Windows implementation using tokio async processes
  • 🧪 Comprehensive test suite with 14 tests
  • 📚 Extensive documentation (16 markdown files)
  • 🔧 Shell completion installation script
  • 🎬 Feature demonstration script

Changed

  • Refactored codebase into modular platform architecture
  • Split Unix and Windows implementations into separate modules
  • Improved error handling with colored output
  • Enhanced command-line parsing with platform-specific guards
  • Updated argument parsing to support -- separator for complex commands

Fixed

  • macOS killpg() ESRCH error with automatic fallback to kill()
  • Test script arithmetic operations causing premature exit with set -e
  • Command argument parsing for commands with dash-prefixed arguments
  • Signal propagation on macOS process groups

Technical Details

  • Performance: 99.9% reduction in system calls (event-driven vs polling)
  • Binary Size: 1.1 MB (release, stripped)
  • Dependencies: Added owo-colors, clap_complete, windows-sys
  • Compatibility: 100% backward compatible with GNU timeout

[Unreleased]

Planned

  • Real-time signal support (SIGRTMIN/SIGRTMAX)
  • Async I/O redirection and capture
  • Configuration file support (~/.timeoutrc)
  • Multiple process monitoring
  • Windows Job Objects integration
  • Package manager distributions (Homebrew, Chocolatey, etc.)