diff --git a/Library/Homebrew/utils/shell.rb b/Library/Homebrew/utils/shell.rb
index c0d6b90ae6180414e67d612080ba7c00e9891056..c1a8f95b7460abe46480e2ff61179aa72e0be4fe 100644
--- a/Library/Homebrew/utils/shell.rb
+++ b/Library/Homebrew/utils/shell.rb
@@ -14,23 +14,26 @@ module Utils
 
     # take a path and heuristically convert it
     # to a shell name, return nil if there's no match
-    def self.path_to_shell(path)
+    def path_to_shell(path)
       # we only care about the basename
       shell_name = File.basename(path)
       # handle possible version suffix like `zsh-5.2`
       shell_name.sub!(/-.*\z/m, "")
       shell_name.to_sym if %w[bash csh fish ksh sh tcsh zsh].include?(shell_name)
     end
+    module_function :path_to_shell
 
-    def self.preferred_shell
+    def preferred_shell
       path_to_shell(ENV.fetch("SHELL", ""))
     end
+    module_function :preferred_shell
 
-    def self.parent_shell
+    def parent_shell
       path_to_shell(`ps -p #{Process.ppid} -o ucomm=`.strip)
     end
+    module_function :parent_shell
 
-    def self.csh_quote(str)
+    def csh_quote(str)
       # ruby's implementation of shell_escape
       str = str.to_s
       return "''" if str.empty?
@@ -41,8 +44,9 @@ module Utils
       str.gsub!(/\n/, "'\\\n'")
       str
     end
+    module_function :csh_quote
     
-    def self.sh_quote(str)
+    def sh_quote(str)
       # ruby's implementation of shell_escape
       str = str.to_s
       return "''" if str.empty?
@@ -52,9 +56,10 @@ module Utils
       str.gsub!(/\n/, "'\n'")
       str
     end
+    module_function :sh_quote
 
     # quote values. quoting keys is overkill
-    def self.export_value(shell, key, value)
+    def export_value(shell, key, value)
       case shell
       when :bash, :ksh, :sh, :zsh
         "export #{key}=\"#{sh_quote(value)}\""
@@ -67,13 +72,15 @@ module Utils
         "setenv #{key} #{csh_quote(value)};"
       end
     end
+    module_function :export_value
 
     # return the shell profile file based on users' preferred shell
-    def self.shell_profile
+    def shell_profile
       SHELL_PROFILE_MAP.fetch(preferred_shell, "~/.bash_profile")
     end
+    module_function :shell_profile
 
-    def self.prepend_path_in_shell_profile(path)
+    def prepend_path_in_shell_profile(path)
       case preferred_shell 
       when :bash, :ksh, :sh, :zsh, nil
         "echo 'export PATH=\"#{sh_quote(path)}:$PATH\"' >> #{shell_profile}"
@@ -83,5 +90,6 @@ module Utils
         "echo 'set -g fish_user_paths \"#{sh_quote(path)}\" $fish_user_paths' >> #{shell_profile}"
       end
     end
+    module_function :prepend_path_in_shell_profile
   end
 end