class Bundler::CLI::Fund
def initialize(options)
def initialize(options) @options = options end
def run
def run Bundler.definition.validate_runtime! groups = Array(options[:group]).map(&:to_sym) deps = if groups.any? Bundler.definition.dependencies_for(groups) else Bundler.definition.requested_dependencies end fund_info = deps.each_with_object([]) do |dep, arr| spec = Bundler.definition.specs[dep.name].first if spec.metadata.key?("funding_uri") arr << "* #{spec.name} (#{spec.version})\n Funding: #{spec.metadata["funding_uri"]}" end end if fund_info.empty? Bundler.ui.info "None of the installed gems you directly depend on are looking for funding." else Bundler.ui.info fund_info.join("\n") end end