def determine_name_and_version
      (name && version) ||
      name_and_version_from_options ||
      name_and_version_from_comments ||
      name_and_version_from_package_json ||
      name_and_version_from_filename
      @version = (version == "0" && options[:parent_version]) ? options[:parent_version] : version
    end
def determine_name_and_version
      (name && version) ||
      name_and_version_from_options ||
      name_and_version_from_comments ||
      name_and_version_from_package_json ||
      name_and_version_from_filename
      @version = (version == "0" && options[:parent_version]) ? options[:parent_version] : version
    end
Determine the name and version of the @fetched_path. Tries a number of
 strategies in order until both name and version are found:

 * from options (options[:name] ...)
 * from comments (// name: )
 * from a package.json ({"name": })
 * from the filename (name-1.0.js)

 If no version can be found, version is set as "0"