method

ensure_safe_gem_name

ruby latest stable - Class: Bundler::CLI::Gem

Method not available on this version

This method is only available on newer versions. The first available version (v2_6_3) is shown here.

ensure_safe_gem_name(name, constant_array)
private

No documentation available.

# File lib/bundler/cli/gem.rb, line 225
    def ensure_safe_gem_name(name, constant_array)
      if name =~ /^\d/
        Bundler.ui.error "Invalid gem name #{name} Please give a name which does not start with numbers."
        exit 1
      end

      constant_name = constant_array.join("::")

      existing_constant = constant_array.inject(Object) do |c, s|
        defined = begin
          c.const_defined?(s)
        rescue NameError
          Bundler.ui.error "Invalid gem name #{name} -- `#{constant_name}` is an invalid constant name"
          exit 1
        end
        (defined && c.const_get(s)) || break
      end

      return unless existing_constant
      Bundler.ui.error "Invalid gem name #{name} constant #{constant_name} is already in use. Please choose another gem name."
      exit 1
    end