diff options
author | Tim Smith <tsmith84@gmail.com> | 2020-08-12 14:16:39 -0700 |
---|---|---|
committer | Tim Smith <tsmith84@gmail.com> | 2020-08-12 14:24:06 -0700 |
commit | 7e2d8e6a1b23cf459becfaaf0525a930bb2bd9e3 (patch) | |
tree | 60636cf607d266498c3424fa3e24a1ce06ef7a97 /lib/chef_zero/server.rb | |
parent | 9ee2a128e8765aa206c7595e404123737696147b (diff) | |
download | chef-zero-7e2d8e6a1b23cf459becfaaf0525a930bb2bd9e3.tar.gz |
Optimize requires for non-omnibus installs
require is quite slow in Ruby and doing requires for things you've already required is also slow. We've used this simple hack in Chef to speed up our requires. In the omnibus installs we patch how rubygems works to make this somewhat pointless, but this will help non-omnibus installs
Signed-off-by: Tim Smith <tsmith@chef.io>
Diffstat (limited to 'lib/chef_zero/server.rb')
-rw-r--r-- | lib/chef_zero/server.rb | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/chef_zero/server.rb b/lib/chef_zero/server.rb index 89a320b..2d699aa 100644 --- a/lib/chef_zero/server.rb +++ b/lib/chef_zero/server.rb @@ -16,14 +16,14 @@ # limitations under the License. # -require "openssl" +require "openssl" unless defined?(OpenSSL) require "open-uri" -require "rubygems" -require "timeout" -require "stringio" +require "rubygems" unless defined?(Gem) +require "timeout" unless defined?(Timeout) +require "stringio" unless defined?(StringIO) -require "rack" -require "webrick" +require "rack" unless defined?(Rack) +require "webrick" unless defined?(WEBrick) require "webrick/https" require_relative "../chef_zero" |