Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: nosoloforks/rtp
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: tetherit/rtp
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 5 commits
  • 17 files changed
  • 2 contributors

Commits on Dec 18, 2021

  1. Configuration menu
    Copy the full SHA
    0a51125 View commit details
    Browse the repository at this point in the history
  2. Some more small improvements

    rgaufman committed Dec 18, 2021
    Configuration menu
    Copy the full SHA
    32c1d95 View commit details
    Browse the repository at this point in the history

Commits on Aug 6, 2025

  1. Fix file descriptor leak and modernize RSpec syntax

    - Add proper file descriptor cleanup for RTP capture files
    - Track file ownership to avoid unlinking user-provided files
    - Always close files when done, only unlink files we own
    - Always setup at_exit cleanup for proper file descriptor hygiene
    - Improve socket closure with proper error handling
    - Fix Timeout method call (was missing Timeout. prefix)
    - Convert all RSpec tests from :should to :expect syntax
    - Add CLAUDE.md documentation for future development
    
    Resolves critical file descriptor leak in /tmp/rtp_capture.raw* files
    that was consuming thousands of file descriptors per process.
    
    🤖 Generated with [Claude Code](https://claude.ai/code)
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    rgaufman and claude committed Aug 6, 2025
    Configuration menu
    Copy the full SHA
    1dd9819 View commit details
    Browse the repository at this point in the history
  2. Update dependencies and modernize gem configuration

    - Update RuboCop to latest version in Gemfile
    - Modernize Rakefile with updated task configuration
    - Update gemspec with current Ruby version requirements
    - Update test configuration in spec_helper
    - Update Cucumber step definitions
    
    🤖 Generated with [Claude Code](https://claude.ai/code)
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    rgaufman and claude committed Aug 6, 2025
    Configuration menu
    Copy the full SHA
    8f17364 View commit details
    Browse the repository at this point in the history

Commits on Dec 3, 2025

  1. CRITICAL: Fix severe file descriptor leak in RTP::Receiver

    Production systems showing 91,900+ leaked rtp_capture.raw Tempfiles!
    
    - Replace at_exit hook with ObjectSpace finalizer for Tempfile cleanup
    - Ensures Tempfiles are closed/unlinked when Receiver objects are garbage collected
    - Prevents FD exhaustion when Receiver objects are not explicitly stopped
    - Process ulimit of 1024 was being exceeded causing 'Too many open files' errors
    
    Root cause: Each RTP::Receiver created a Tempfile but only cleaned it up
    at process exit. When tens of thousands of Receiver objects were created
    during normal operation, all Tempfiles remained open until process exit.
    
    This change allows the GC to clean up FDs immediately when Receiver
    objects become unreachable, preventing catastrophic FD exhaustion.
    rgaufman committed Dec 3, 2025
    Configuration menu
    Copy the full SHA
    80c4fe3 View commit details
    Browse the repository at this point in the history
Loading