From: Charles Oliver Nutter Date: 2008-12-24T07:13:55+09:00 Subject: [ruby-core:20846] Re: use of require thread safety Paul Brannan wrote: > I see no deadlock here. The lock is released as soon as each require > returns. > > There is a deadlock if a.rb and b.rb are mutually dependent, but IMO > such a dependency is a bug. Perhaps it's a behavior that should be discouraged, or even qualifies as a "bug" in the user's code, but it and many other peculiar scenarios are physically allowed by the require structure today. file.rb: require 'file.rb' This sort of thing is obviously unusual code, but it's allowed by the conventions of require today. If you are saying that we should disallow circular requires to ever happen...well, that may be a valid argument, but it still represents a behavioral change.