diff options
| author | Can Eldem <celdem@gitlab.com> | 2020-02-24 14:15:16 +0000 |
|---|---|---|
| committer | Can Eldem <celdem@gitlab.com> | 2020-02-24 14:15:16 +0000 |
| commit | 1bd03175f997d381eaac4b2d3756b5d179e697e5 (patch) | |
| tree | 560b309ede2161c19af1c6989a7e2032333c8eb6 /lib/license/management/python/pipenv.rb | |
| parent | 36e9f083880cfe4e886277c7242295f2506fad91 (diff) | |
| parent | 7352e16643fed6ed96d5f63476efd4b4bce71c5f (diff) | |
Merge branch '199078-update-license-finder' into 'master'v2.5.0
Update license_finder gem to 6.0.0
See merge request gitlab-org/security-products/license-management!112
Diffstat (limited to 'lib/license/management/python/pipenv.rb')
| -rw-r--r-- | lib/license/management/python/pipenv.rb | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/lib/license/management/python/pipenv.rb b/lib/license/management/python/pipenv.rb deleted file mode 100644 index 482fd25..0000000 --- a/lib/license/management/python/pipenv.rb +++ /dev/null @@ -1,64 +0,0 @@ -# frozen_string_literal: true - -module License - module Management - class Pipenv < LicenseFinder::PackageManager - include Loggable - - def initialize(options = {}) - super - @lockfile = Pathname('Pipfile.lock') - end - - def current_packages - @current_packages ||= - begin - packages = {} - each_dependency(groups: allowed_groups) do |name, data, group| - version = canonicalize(data['version']) - package = packages.fetch(key_for(name, version)) do |key| - packages[key] = build_package_for(name, version) - end - package.groups << group - end - packages.values - end - end - - def possible_package_paths - project_path ? [project_path.join(@lockfile)] : [@lockfile] - end - - private - - def each_dependency(groups: []) - dependencies = JSON.parse(IO.read(detected_package_path)) - groups.each do |group| - dependencies[group].each do |name, data| - yield name, data, group - end - end - end - - def canonicalize(version) - version.sub(/^==/, '') - end - - def build_package_for(name, version) - LicenseFinder::PipPackage.new(name, version, PyPI.definition(name, version)) - end - - def key_for(name, version) - "#{name}-#{version}" - end - - def allowed_groups - %w[default develop] - ignored_groups - end - - def ignored_groups - @ignored_groups.to_a || [] - end - end - end -end |
