[DRE-commits] [librarian-puppet] 44/153: Avoid duplicated dependencies with different sources

Stig Sandbeck Mathisen ssm at debian.org
Wed Jun 1 20:30:39 UTC 2016


This is an automated email from the git hooks/post-receive script.

ssm pushed a commit to branch master
in repository librarian-puppet.

commit bdb38bbc061f529b469b056a9522d96f356905e8
Author: Carlos Sanchez <csanchez at maestrodev.com>
Date:   Tue Aug 5 19:16:58 2014 +0200

    Avoid duplicated dependencies with different sources
---
 lib/librarian/puppet/source/local.rb | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/lib/librarian/puppet/source/local.rb b/lib/librarian/puppet/source/local.rb
index 34f9c92..26b04fb 100644
--- a/lib/librarian/puppet/source/local.rb
+++ b/lib/librarian/puppet/source/local.rb
@@ -37,16 +37,20 @@ module Librarian
         def fetch_dependencies(name, version, extra)
           dependencies = Set.new
 
-          parsed_metadata['dependencies'].each do |d|
-            gem_requirement = Requirement.new(d['version_requirement']).gem_requirement
-            dependencies << Dependency.new(d['name'], gem_requirement, forge_source)
-          end
-
           if specfile?
             spec = environment.dsl(Pathname(specfile))
             dependencies.merge spec.dependencies
           end
 
+          parsed_metadata['dependencies'].each do |d|
+            gem_requirement = Requirement.new(d['version_requirement']).gem_requirement
+            new_dependency = Dependency.new(d['name'], gem_requirement, forge_source)
+            # Avoid duplicated dependencies with different sources
+            unless dependencies.find { |spec_dependency| spec_dependency.name == new_dependency.name && spec_dependency.requirement == new_dependency.requirement }
+              dependencies << new_dependency
+            end
+          end
+
           dependencies
         end
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/librarian-puppet.git



More information about the Pkg-ruby-extras-commits mailing list