How to unrequire a Ruby module/library
Require
Regular process
The process to require a module/library is by using:
require 'objspace'

"Unrequire"
List all loaded features
Everytime you require a module/library in ruby, this new value is added to the $LOADED_FEATURES array.
In the irb terminal:
$LOADED_FEATURES

Find your module/library
Yes, you can use the $LOADED_FEATURES array directly to check if your module or library has been loaded.
You can do this by iterating through the array and checking if the module's name is included in any of the paths stored in $LOADED_FEATURES.
$LOADED_FEATURES.any? { |path| path.include?("readline") }

In the previous example, readline is an example of a Ruby module/library.
Mutate the loaded features
In Ruby, once you've required a module or library using the require keyword, you can't directly "unrequire" it. However, you can achieve a similar effect by removing the module from the $LOADED_FEATURES array.
$LOADED_FEATURES.delete_if { |path| path.include?('benchmark') }

In my previous example, benchmark is the module/library.
Double check the loaded features
Let's check if the benchmark module was removed from the $LOADED_FEATURES array:
$LOADED_FEATURES.any? { |path| path.include?("benchmark") }

Done
Conclusion
By following these steps, you can unrequire a Ruby module/library.
Celebrate

Reach me out
Final thoughts
Thank you for reading this article.
If you have any questions, thoughts, suggestions, or corrections, please share them with us.
We appreciate your feedback and look forward to hearing from you.
Feel free to suggest topics for future blog articles. Until next time!




