Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🐛 FFdecoder: Refactored Process Termination and various important updates. #53

Merged
merged 3 commits into from
Jul 7, 2024

Conversation

abhiTronix
Copy link
Owner

@abhiTronix abhiTronix commented Jul 7, 2024

Brief Description

This pull request includes several significant updates and improvements:

Title: End Support for Python 3.7, Improve Documentation, and Refactor Process Termination

  1. End of Support for Python 3.7 (Fixes [Idea]: End of Support for Python 3.7.x Legacy #48):

    • Increased the minimum required Python version to 3.8.
    • Removed deprecated Python 3.7 references from the metadata.
  2. Documentation Enhancements (Fixes [Bug]: frame extraction by timestamp operation can be very slow #44):

    • Added detailed instructions and context for Input and Output Seeking methods.
    • Introduced sections on Input Seeking and Output Seeking, highlighting their pros, cons, and providing usage examples.
    • Included a warning about the accuracy issues when using output seeking with filters.
    • Improved overall document structure and readability.
  3. FFdecoder Process Termination Refactor (Fixes [Question]: while input stream have stop , deffcode will not stop but just hold on #41):

    • Refactored the process termination method to use terminate() instead of kill() for a more graceful shutdown.
    • Ensured that the terminate() method sends the appropriate signal (SIGTERM on Unix, TerminateProcess() on Windows).
    • Simplified conditional checks using short-circuiting.

Requirements / Checklist

  • I have read the DeFFcode PR Guidelines.
  • I have read the DeFFcode Documentation.
  • I have updated the documentation files accordingly(if required).

Related Issue

#48
#44
#41

Context

These changes collectively aim to modernize the codebase by discontinuing support for outdated Python versions, enhance the documentation for better user understanding, and ensure more reliable and graceful process termination methods.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

- 🏗️ Increased `python_requires` to `3.8` and above.
- 🔥  Removed depreciated Python-3.7 from metadata.
…Seeking methods. (Fixes #44)

- 📝 Introduced `Input Seeking` and `Output Seeking` sections with pros, cons, and usage examples.
- 🚸 Added warning about using output seeking with filters for accuracy.
- 🎨 Improved overall document structure and readability.
- 🚀 Changed process termination from `kill` to `terminate` if the process is still running.
  - Ensures that the process is terminated gracefully using `terminate()` instead of `kill()`.
  - The terminate() method sends the SIGTERM signal to a process, which typically allows for a graceful shutdown. On Unix, this uses the SIGTERM signal, while on Windows, it uses TerminateProcess().
- 🎨 Simplified conditional check using short-circuiting.
@abhiTronix abhiTronix added Enhancement ⚡ New feature Issue/Request enhancing DeFFcode APIs. WIP 🏗️ Work in Progress Bug Fix 🐛 💣 Bug fix in progress !!! labels Jul 7, 2024
@abhiTronix abhiTronix added this to the v0.2.6 milestone Jul 7, 2024
@abhiTronix abhiTronix self-assigned this Jul 7, 2024
Copy link

codecov bot commented Jul 7, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.83%. Comparing base (d448e1d) to head (87e6643).

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #53      +/-   ##
==========================================
- Coverage   95.84%   95.83%   -0.01%     
==========================================
  Files           6        6              
  Lines         794      793       -1     
==========================================
- Hits          761      760       -1     
  Misses         33       33              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@abhiTronix abhiTronix merged commit f4682f3 into master Jul 7, 2024
14 checks passed
@abhiTronix abhiTronix deleted the dev branch July 7, 2024 18:40
@abhiTronix abhiTronix added Solved 🥅 Final goal achieved. and removed WIP 🏗️ Work in Progress labels Jul 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Fix 🐛 💣 Bug fix in progress !!! Enhancement ⚡ New feature Issue/Request enhancing DeFFcode APIs. Solved 🥅 Final goal achieved.
Projects
None yet
1 participant