Skip to content

Commit 973ab84

Browse files
committedMay 3, 2021
Move websocket dependency to selenium-devtools gem
Even though Selenium::WebDriver::DevTools actively uses WebSocket gem, it cannot be loaded and work without first requiring selenium-devtools gem. However, if the user doesn't intend to use Selenium::WebDriver::DevTools, there is no need for them to even install websocket gem. Hence, it makes sense to actually move this dependency into selenium-devtools gem.
1 parent 8d80348 commit 973ab84

File tree

6 files changed

+14
-5
lines changed

6 files changed

+14
-5
lines changed
 

‎rb/Gemfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
# frozen_string_literal: true
22

33
source 'https://rubygems.org'
4-
gemspec name: 'selenium-webdriver'
4+
Dir["#{__dir__}/*.gemspec"].each do |spec|
5+
gemspec name: File.basename(spec, '.gemspec')
6+
end

‎rb/build.desc

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ rubygem(
1212
]
1313
)
1414

15-
rubydevtoolsgem(
15+
rubygem(
1616
gemspec = "build/rb/selenium-devtools.gemspec",
1717
name = "devtools",
1818
deps = [
@@ -90,6 +90,7 @@ ruby_test(name = "chrome",
9090
],
9191
deps = [
9292
":chrome",
93+
":devtools",
9394
":bidi"
9495
]
9596
)
@@ -106,6 +107,7 @@ ruby_test(name = "remote-chrome",
106107
],
107108
deps = [
108109
":chrome",
110+
":devtools",
109111
":bidi",
110112
":remote"
111113
]
@@ -130,6 +132,7 @@ ruby_test(name = "edge",
130132
],
131133
deps = [
132134
":edge",
135+
":devtools",
133136
":bidi"
134137
]
135138
)
@@ -146,6 +149,7 @@ ruby_test(name = "remote-edge",
146149
],
147150
deps = [
148151
":edge",
152+
":devtools",
149153
":bidi",
150154
":remote"
151155
]
@@ -182,6 +186,7 @@ ruby_test(name = "firefox-nightly",
182186
],
183187
deps = [
184188
":firefox",
189+
":devtools",
185190
":bidi"
186191
]
187192
)
@@ -327,7 +332,6 @@ ruby_library(name = "bidi",
327332
],
328333
deps = [
329334
":common",
330-
":devtools"
331335
],
332336
resources = [
333337
{ "../javascript/cdp-support/mutation-listener.js": "rb/lib/selenium/webdriver/atoms/mutationListener.js" }
@@ -339,6 +343,7 @@ ruby_library(name = "devtools",
339343
"selenium-devtools.gemspec",
340344
"lib/selenium/devtools.rb",
341345
"lib/selenium/devtools/version.rb",
346+
"Gemfile",
342347
"NOTICE",
343348
"CHANGES",
344349
"README.md"

‎rb/lib/selenium/devtools.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
# specific language governing permissions and limitations
1818
# under the License.
1919

20+
require 'websocket'
21+
2022
module Selenium
2123
module DevTools
2224
class << self

‎rb/lib/selenium/webdriver.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
require 'date'
2424
require 'json'
2525
require 'set'
26-
require 'websocket'
2726

2827
require 'selenium/webdriver/atoms'
2928
require 'selenium/webdriver/common'

‎rb/selenium-devtools.gemspec

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,6 @@ Gem::Specification.new do |s|
3131

3232
s.files = Dir.glob('{lib/selenium/devtools}/**/*')
3333
s.require_paths = ["lib"]
34+
35+
s.add_runtime_dependency 'websocket', ['~> 1.0']
3436
end

‎rb/selenium-webdriver.gemspec

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ Gem::Specification.new do |s|
3636
s.add_runtime_dependency 'childprocess', ['>= 0.5', '< 5.0']
3737
s.add_runtime_dependency 'rexml', ['~> 3.2']
3838
s.add_runtime_dependency 'rubyzip', ['>= 1.2.2']
39-
s.add_runtime_dependency 'websocket', ['~> 1.0']
4039

4140
# childprocess requires ffi on windows but doesn't declare it in its dependencies
4241
s.add_development_dependency 'ffi'

0 commit comments

Comments
 (0)