Sha256: 3e31c81c860b9868d44e604ea57df8a8b4ef07a18a3e0e9fbc58b7bf0cdd4f8c
Contents?: true
Size: 864 Bytes
Versions: 14
Compression:
Stored size: 864 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 def package_manager 'Pip' end end end
Version data entries
14 entries across 14 versions & 1 rubygems