From: sonots@... Date: 2017-05-31T02:07:27+00:00 Subject: [ruby-core:81481] [Ruby trunk Feature#13613] Prefer that require/require_relative/load to tell us permission error if the target file is unreadable Issue #13613 has been updated by sonots (Naotoshi Seo). It is not correct. The error class is still LoadError, only error message is changed. ---------------------------------------- Feature #13613: Prefer that require/require_relative/load to tell us permission error if the target file is unreadable https://bugs.ruby-lang.org/issues/13613#change-65190 * Author: sonots (Naotoshi Seo) * Status: Feedback * Priority: Normal * Assignee: * Target version: ---------------------------------------- ### Background https://github.com/google/google-api-ruby-client/issues/205 We've ever met a situation that read-permissions of files in released google-api-client gem were lost as: ``` $ ls -l ~/.rbenv/versions/2.1.3/lib/ruby/gems/2.1.0/gems/google-api-client-0.8.3/lib/google -rw-r----- 1 sonots sonots 27249 March 24 18:32 2015 api_client.rb ``` The error message was ``` in `require': cannot load such file -- api_client.rb (LoadError) ``` At that time, it took 30 minutes for me to find the reason why we get LoadError with the gem because the file exists. I looked the source codes load.c, and finally I found the reason as it is because of permission with my intuition. ### What I Want If `require` tells us PermissionError in addition to LoadError, I could figure out the reason soon. I think the additional information is helpful for finding such issues. -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>