Skip to content

Commit c073304

Browse files
authored
fix: Wrappers load release dependencies if local dependencies do not match (#1158)
1 parent 74d5c01 commit c073304

File tree

7 files changed

+70
-13
lines changed

7 files changed

+70
-13
lines changed

gapic-generator-ads/Gemfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,14 +94,14 @@ GEM
9494
rainbow (3.1.1)
9595
redcarpet (3.6.0)
9696
regexp_parser (2.10.0)
97-
rubocop (1.71.0)
97+
rubocop (1.71.1)
9898
json (~> 2.3)
9999
language_server-protocol (>= 3.17.0)
100100
parallel (~> 1.10)
101101
parser (>= 3.3.0.2)
102102
rainbow (>= 2.2.2, < 4.0)
103103
regexp_parser (>= 2.9.3, < 3.0)
104-
rubocop-ast (>= 1.36.2, < 2.0)
104+
rubocop-ast (>= 1.38.0, < 2.0)
105105
ruby-progressbar (~> 1.7)
106106
unicode-display_width (>= 2.4.0, < 4.0)
107107
rubocop-ast (1.38.0)

gapic-generator-cloud/Gemfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,14 +94,14 @@ GEM
9494
rainbow (3.1.1)
9595
redcarpet (3.6.0)
9696
regexp_parser (2.10.0)
97-
rubocop (1.71.0)
97+
rubocop (1.71.1)
9898
json (~> 2.3)
9999
language_server-protocol (>= 3.17.0)
100100
parallel (~> 1.10)
101101
parser (>= 3.3.0.2)
102102
rainbow (>= 2.2.2, < 4.0)
103103
regexp_parser (>= 2.9.3, < 3.0)
104-
rubocop-ast (>= 1.36.2, < 2.0)
104+
rubocop-ast (>= 1.38.0, < 2.0)
105105
ruby-progressbar (~> 1.7)
106106
unicode-display_width (>= 2.4.0, < 4.0)
107107
rubocop-ast (1.38.0)

gapic-generator-cloud/templates/cloud/wrapper_gem/gemfile.erb

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,22 @@ source "https://rubygems.org"
33

44
gemspec
55

6-
<%- gem.versioned_gems.each do |name| -%>
7-
gem "<%= name %>", path: "../<%= name %>"
8-
<%- end -%>
6+
local_dependencies = <%= gem.versioned_gems.inspect %>
7+
8+
main_spec = gemspecs.last || Bundler.load_gemspec(File.join __dir__, "<%= gem.name %>.gemspec")
9+
local_dependencies.each do |name|
10+
spec_path = File.expand_path "../#{name}/#{name}.gemspec", __dir__
11+
unless File.file? spec_path
12+
warn "WARNING: Disabled local dependency for #{name} because gemspec not found."
13+
next
14+
end
15+
version = Bundler.load_gemspec(spec_path).version
16+
if main_spec.dependencies.any? { |dep| dep.name == name && !dep.requirement.satisfied_by?(version) }
17+
warn "WARNING: Disabled local dependency for #{name} because the gemspec disallows version #{version}."
18+
next
19+
end
20+
gem name, path: "../#{name}"
21+
end
922

1023
gem "google-style", "~> 1.30.1"
1124
gem "minitest", "~> 5.22"

gapic-generator/Gemfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,14 +88,14 @@ GEM
8888
rainbow (3.1.1)
8989
redcarpet (3.6.0)
9090
regexp_parser (2.10.0)
91-
rubocop (1.71.0)
91+
rubocop (1.71.1)
9292
json (~> 2.3)
9393
language_server-protocol (>= 3.17.0)
9494
parallel (~> 1.10)
9595
parser (>= 3.3.0.2)
9696
rainbow (>= 2.2.2, < 4.0)
9797
regexp_parser (>= 2.9.3, < 3.0)
98-
rubocop-ast (>= 1.36.2, < 2.0)
98+
rubocop-ast (>= 1.38.0, < 2.0)
9999
ruby-progressbar (~> 1.7)
100100
unicode-display_width (>= 2.4.0, < 4.0)
101101
rubocop-ast (1.38.0)

shared/output/cloud/compute_small_wrapper/Gemfile

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,22 @@ source "https://rubygems.org"
22

33
gemspec
44

5-
gem "google-cloud-compute-v1", path: "../google-cloud-compute-v1"
5+
local_dependencies = ["google-cloud-compute-v1"]
6+
7+
main_spec = gemspecs.last || Bundler.load_gemspec(File.join(__dir__, "google-cloud-compute.gemspec"))
8+
local_dependencies.each do |name|
9+
spec_path = File.expand_path "../#{name}/#{name}.gemspec", __dir__
10+
unless File.file? spec_path
11+
warn "WARNING: Disabled local dependency for #{name} because gemspec not found."
12+
next
13+
end
14+
version = Bundler.load_gemspec(spec_path).version
15+
if main_spec.dependencies.any? { |dep| dep.name == name && !dep.requirement.satisfied_by?(version) }
16+
warn "WARNING: Disabled local dependency for #{name} because the gemspec disallows version #{version}."
17+
next
18+
end
19+
gem name, path: "../#{name}"
20+
end
621

722
gem "google-style", "~> 1.30.1"
823
gem "minitest", "~> 5.22"

shared/output/cloud/language_wrapper/Gemfile

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,22 @@ source "https://rubygems.org"
22

33
gemspec
44

5-
gem "google-cloud-language-v1", path: "../google-cloud-language-v1"
5+
local_dependencies = ["google-cloud-language-v1"]
6+
7+
main_spec = gemspecs.last || Bundler.load_gemspec(File.join(__dir__, "google-cloud-language.gemspec"))
8+
local_dependencies.each do |name|
9+
spec_path = File.expand_path "../#{name}/#{name}.gemspec", __dir__
10+
unless File.file? spec_path
11+
warn "WARNING: Disabled local dependency for #{name} because gemspec not found."
12+
next
13+
end
14+
version = Bundler.load_gemspec(spec_path).version
15+
if main_spec.dependencies.any? { |dep| dep.name == name && !dep.requirement.satisfied_by?(version) }
16+
warn "WARNING: Disabled local dependency for #{name} because the gemspec disallows version #{version}."
17+
next
18+
end
19+
gem name, path: "../#{name}"
20+
end
621

722
gem "google-style", "~> 1.30.1"
823
gem "minitest", "~> 5.22"

shared/output/cloud/secretmanager_wrapper/Gemfile

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,22 @@ source "https://rubygems.org"
22

33
gemspec
44

5-
gem "google-cloud-secret_manager-v1", path: "../google-cloud-secret_manager-v1"
6-
gem "google-cloud-secret_manager-v1beta1", path: "../google-cloud-secret_manager-v1beta1"
5+
local_dependencies = ["google-cloud-secret_manager-v1", "google-cloud-secret_manager-v1beta1"]
6+
7+
main_spec = gemspecs.last || Bundler.load_gemspec(File.join(__dir__, "google-cloud-secret_manager.gemspec"))
8+
local_dependencies.each do |name|
9+
spec_path = File.expand_path "../#{name}/#{name}.gemspec", __dir__
10+
unless File.file? spec_path
11+
warn "WARNING: Disabled local dependency for #{name} because gemspec not found."
12+
next
13+
end
14+
version = Bundler.load_gemspec(spec_path).version
15+
if main_spec.dependencies.any? { |dep| dep.name == name && !dep.requirement.satisfied_by?(version) }
16+
warn "WARNING: Disabled local dependency for #{name} because the gemspec disallows version #{version}."
17+
next
18+
end
19+
gem name, path: "../#{name}"
20+
end
721

822
gem "google-style", "~> 1.30.1"
923
gem "minitest", "~> 5.22"

0 commit comments

Comments
 (0)