[rubygems/rubygems] Warn on duplicate dependency in a specification

https://github.com/rubygems/rubygems/commit/af3e5f7883
This commit is contained in:
bronzdoc 2020-07-28 22:15:09 -06:00 коммит произвёл Hiroshi SHIBATA
Родитель 985309ac38
Коммит 00bdac18cf
2 изменённых файлов: 11 добавлений и 0 удалений

Просмотреть файл

@ -556,6 +556,10 @@ class Gem::Specification < Gem::BasicSpecification
# spec.add_runtime_dependency 'example', '~> 1.1', '>= 1.1.4'
def add_runtime_dependency(gem, *requirements)
if requirements.uniq.size != requirements.size
warn "WARNING: duplicate dependency #{requirements}"
end
add_dependency_with_type(gem, :runtime, requirements)
end

Просмотреть файл

@ -3051,6 +3051,13 @@ Please report a bug if this causes problems.
end
end
def test_duplicate_runtime_dependency
expected = "WARNING: duplicate dependency [\"~> 3.0\", \"~> 3.0\"]\n"
assert_output nil, expected do
@a1.add_runtime_dependency "b", "~> 3.0", "~> 3.0"
end
end
def set_orig(cls)
s_cls = cls.singleton_class
s_cls.send :alias_method, :orig_unresolved_deps , :unresolved_deps