Sha256: 1d9b2e345af1809f9b7946975327a47ebfa1c058e74d5fd868ad502c8338297f
Contents?: true
Size: 817 Bytes
Versions: 4
Compression:
Stored size: 817 Bytes
Contents
module LicenseFinder class PipPackage < Package LICENSE_FORMAT = /^License.*::\s*(.*)$/ INVALID_LICENSES = ["", "UNKNOWN"].to_set def self.license_names_from_spec(spec) license = spec["license"].to_s.strip return [license] unless INVALID_LICENSES.include?(license) spec .fetch("classifiers", []) .select { |c| c =~ LICENSE_FORMAT } .map { |c| c.gsub(LICENSE_FORMAT, '\1') } end def initialize(name, version, spec, options={}) super( name, version, options.merge( authors: spec["author"], summary: spec["summary"], description: spec["description"], homepage: spec["home_page"], spec_licenses: self.class.license_names_from_spec(spec) ) ) end end end
Version data entries
4 entries across 4 versions & 1 rubygems