- π Security: Fix command injection vulnerabilities in system calls
- π Security: Use SecureRandom for socket paths instead of predictable object_id
- β¨ Feature: Add configuration system with global defaults
- β¨ Feature: Implement sudo -A flag support for graphical password prompts
- β¨ Feature: Add Sudo.as_root convenience method for better DSL
- β¨ Feature: Add configurable timeouts
- β¨ Feature: Add respond_to_missing? for proper method reflection
- π₯ Breaking: Minimum Ruby version bumped to 2.7+ (EOL compliance)
- π§ Internal: Modernize Ruby code with keyword arguments and array-form system calls
- π§ Internal: Improve test coverage and add configuration tests
π Historical Releases
- π Compatibility: Add Ruby 3.2 support
- π Fix: Resolve Bundler::StubSpecification marshaling issues
- π§ Internal: Complete code modernization and cleanup
- β Testing: Add comprehensive RSpec test suite (98%+ coverage)
- π Compatibility: Support Ruby 2.3, 2.4, and 2.5
- π Fix: Improve gem and dependency loading robustness
- π Fix: Ensure sudo process properly stops when run block ends
- π Fix: Fix Wrapper.run to properly return values
- π Fix: Resolve infinite recursion under Bundler
- π Security: Restrict DRb access to localhost only
- π Documentation: Extensive README and code documentation improvements
- π License: Switch to MIT license
- β¨ Feature: Add auto-require and autoload support
- π§ Internal: Modularize codebase architecture
- π Documentation: Extensive documentation improvements
- ποΈ Removed: Remove confusing DSL features (temporarily)
- π Documentation: Correct RDoc options in gemspec
- π§ Internal: Minor packaging improvements
- π Initial: First public release
- β¨ Feature: Core sudo wrapper functionality with DRb
- β¨ Feature: Unix domain socket communication
- β¨ Feature: Process spawning and management
- β¨ Feature: Basic object proxying through sudo