chromedriver-helper 1.2.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5e0b6307e13449f5b515f02cdb6699ff8fa54abd
4
- data.tar.gz: 84d2cc85ae13474a5ba44c2a671778bdba5886f4
2
+ SHA256:
3
+ metadata.gz: 7006614d853693d7368fffc8028a7e031dd115fbae6b9bfe8260833ebedabef6
4
+ data.tar.gz: 4a59a6db455c21be5173477b8c572fef1a8e15dc7aba244e3106511c962187da
5
5
  SHA512:
6
- metadata.gz: c8893b243733b783d6d93a0bf0fb6054bd15a39e31b3c6a806dcf5e7736ae7d740ec38802484acb5aabf114e9e4b87e8ae1e15521f7ecc31b961f060b1deb8b9
7
- data.tar.gz: 05d5298edb11df1a7c0a545c503da8ff4609d3c22847b895f6b3955507427b535790aa58382bd1ffebd772d686a0a97e51d8b68f952dd730f675efb7b7ce132d
6
+ metadata.gz: ffa8c929bb6f90afd68a87a4b61a12db96e2bf561d532f657b36d24ad525c8ec7c9a50fd82a0f1275ccef2d5d90554b457e2e0ed5e6adb8e11a2a7d5814d9612
7
+ data.tar.gz: 3c26b89de8cd0159337ac3311abe1729b204c57a62b7a6030d2bfa338ca9dfbd778dd30320259a38e561fd415a127580b7d7a6df5c696400412ce84daead40a3
@@ -1,12 +1,23 @@
1
1
  chromedriver-helper changelog
2
2
  ==========
3
3
 
4
+ 2.0.0 - 2019-09-15
5
+ ----------
6
+
7
+ **Backwards-incompatible change:**
8
+
9
+ The shadow executable `chromedriver` has been renamed to `chromedriver-helper` to work around issues with projects _not_ using the gem on a system on which the gem is installed. See [#57](https://github.com/flavorjones/chromedriver-helper/issues/57) for details.
10
+
11
+ Many thanks to Miklós Fazekas (@mfazekas) for both reporting the issue and submitting the fix.
12
+
13
+
14
+
4
15
  1.2.0 - 2018-02-03
5
16
  ----------
6
17
 
7
18
  Dependencies:
8
19
 
9
- * Bump dependencies on `nokogiri` and `archive-zip. (Thanks, @odlp and @ksylvest!)
20
+ * Bump dependencies on `nokogiri` and `archive-zip`. (Thanks, @odlp and @ksylvest!)
10
21
 
11
22
 
12
23
  Bug fixes:
data/README.md CHANGED
@@ -1,24 +1,17 @@
1
- # chromedriver-helper
1
+ # [chromedriver-helper](http://github.com/flavorjones/chromedriver-helper)
2
2
 
3
- [![Build status](https://api.travis-ci.org/flavorjones/chromedriver-helper.svg)](https://travis-ci.org/flavorjones/chromedriver-helper)
3
+ [![Concourse CI](https://ci.nokogiri.org/api/v1/teams/nokogiri-core/pipelines/chromedriver-helper/jobs/ruby-2.5/badge)](https://ci.nokogiri.org/teams/nokogiri-core/pipelines/chromedriver-helper)
4
4
 
5
- Easy installation and use of [chromedriver](https://sites.google.com/a/chromium.org/chromedriver/), the Chromium project's
6
- selenium webdriver adapter.
7
-
8
- * [http://github.com/flavorjones/chromedriver-helper](http://github.com/flavorjones/chromedriver-helper)
5
+ Easy installation and use of [`chromedriver`](https://sites.google.com/a/chromium.org/chromedriver/), the Chromium project's Selenium webdriver adapter.
9
6
 
10
7
 
11
8
  # Description
12
9
 
13
- `chromedriver-helper` installs an executable, `chromedriver`, in your
14
- gem path.
10
+ `chromedriver-helper` installs an executable, `chromedriver-helper`, in your gem path, and configures Selenium to invoke it as the web driver.
15
11
 
16
- This script will, if necessary, download the appropriate binary for
17
- your platform and install it into `~/.chromedriver-helper`, then exec
18
- it. Easy peasy!
12
+ This script will, if necessary, download the appropriate binary for your platform and install it into `~/.chromedriver-helper`, then exec it. Easy peasy!
19
13
 
20
- chromedriver is fast. By my unscientific benchmark, it's around 20%
21
- faster than webdriver + Firefox 8. You should use it!
14
+ Individual projects can even select which version of `chromedriver` they want to run.
22
15
 
23
16
 
24
17
  # Usage
@@ -35,41 +28,69 @@ then, in your specs:
35
28
  end
36
29
 
37
30
 
31
+ # Updating to latest `chromedriver`
32
+
33
+ You can always update to the latest version of `chromedriver`:
34
+
35
+ chromedriver-update
36
+
37
+
38
+ ## Having problems updating?
39
+
40
+ If for whatever reason you're having problems getting `chromedriver-helper` to update to the latest `chromedriver`, try this:
41
+
42
+ 1. Delete the directory `$HOME/.chromedriver-helper`
43
+ 2. Run `chromedriver-update`
44
+
45
+
38
46
  # Specifying a version
39
47
 
40
- If you want to run a specific version of chromedriver, you can set the version like so:
48
+ If you want to run a specific version of `chromedriver` in your project, you can set the version in you testing setup like so:
41
49
 
42
50
  Chromedriver.set_version "2.24"
43
51
 
44
- Or, from the command line, you can run
52
+ Or, from the command line, you can choose a system-wide default:
45
53
 
46
54
  chromedriver-update 2.24
47
55
 
48
56
 
49
- # Updating to latest Chromedriver
57
+ # Support
50
58
 
51
- If you'd like to force-upgrade to the latest version of chromedriver:
59
+ The code lives at [http://github.com/flavorjones/chromedriver-helper](http://github.com/flavorjones/chromedriver-helper). Open a Github Issue, or send a pull request! Thanks! You're the best.
52
60
 
53
- 1. delete the directory `$HOME/.chromedriver-helper`
54
- 2. run `chromedriver-update`
55
61
 
56
- This might be necessary on platforms on which Chrome auto-updates,
57
- which has been known to introduce incompatibilities with older
58
- versions of chromedriver (see
59
- [Issue #3](https://github.com/flavorjones/chromedriver-helper/issues/3)
60
- for an example).
62
+ # Known Issues
61
63
 
64
+ ## `chromedriver-helper` affects other projects on my system
62
65
 
63
- # Support
66
+ v1.2.0 and earlier installed an executable named `chromedriver`, which may cause confusion for apps on your system that are _not_ using `chromedriver-helper`. v2.0.0 and later do not cause this problem.
67
+
68
+ The common symptom is an error message that looks like this:
64
69
 
65
- The code lives at
66
- [http://github.com/flavorjones/chromedriver-helper](http://github.com/flavorjones/chromedriver-helper).
67
- Open a Github Issue, or send a pull request! Thanks! You're the best.
70
+ ```
71
+ Selenium::WebDriver::Error::WebDriverError: unable to connect to chromedriver 127.0.0.1:9515
72
+ ```
73
+
74
+ First, confirm that we're talking about the same thing by running:
75
+
76
+ ``` sh
77
+ bundle exec ruby -e "system('chromedriver -v')"
78
+ ```
79
+
80
+ and making sure you see something like:
81
+
82
+ ```
83
+ .../rubygems_integration.rb:462:in `block in replace_bin_path': can't find executable chromedriver for gem chromedriver-helper (Gem::Exception)
84
+ ```
85
+
86
+ If you see this message, then **uninstall all versions of `chromedriver-helper` prior to v2.0.0**; and make sure your other projects have updated to v2.0.0 or later.
87
+
88
+ (You can read more about this issue at https://github.com/flavorjones/chromedriver-helper/issues/57.)
68
89
 
69
90
 
70
91
  ## CentOS 6 and 7
71
92
 
72
- Apparently recent versions of `chromedriver` won't run on CentOS 6 and 7, due to the [problems explained here](https://chrome.richardlloyd.org.uk/). The error messages look something like:
93
+ Some versions of `chromedriver` won't run on CentOS 6 and 7 due to the [problems explained here](https://chrome.richardlloyd.org.uk/). The error messages look something like:
73
94
 
74
95
  ```
75
96
  chromedriver: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/vagrant/.chromedriver-helper/linux64/chromedriver)
@@ -81,10 +102,9 @@ chromedriver: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (req
81
102
  You can get `chromedriver` to work on these systems by running the `install_chrome.sh` script on the page linked to above, and then making sure your `chromedriver` process has `LD_LIBRARY_PATH` set so that `/opt/google/chrome/lib` is present, e.g.
82
103
 
83
104
  ```
84
- $ LD_LIBRARY_PATH=/opt/google/chrome/lib chromedriver
105
+ $ LD_LIBRARY_PATH=/opt/google/chrome/lib chromedriver-helper
85
106
  Starting ChromeDriver 2.28.455506 (18f6627e265f442aeec9b6661a49fe819aeeea1f) on port 9515
86
107
  Only local connections are allowed.
87
-
88
108
  ```
89
109
 
90
110
  # License
@@ -94,9 +114,6 @@ MIT licensed, see LICENSE.txt for full details.
94
114
 
95
115
  # Credit
96
116
 
97
- The idea for this gem comes from @brianhempel's project
98
- `chromedriver-gem` which, despite the name, is not currently published
99
- on http://rubygems.org/.
117
+ The idea for this gem comes from @brianhempel's project `chromedriver-gem` which, despite the name, is not currently published on http://rubygems.org/.
100
118
 
101
- Some improvements on the idea were taken from the installation process
102
- for standalone Phusion Passenger.
119
+ Some improvements on the idea were taken from the installation process for standalone Phusion Passenger.
@@ -1,3 +1,41 @@
1
+ anchors:
2
+ notify_failure_to_pr: &notify_failure_to_pr
3
+ put: chromedriver-helper-pr
4
+ params: {path: chromedriver-helper-pr, status: failure}
5
+
6
+ groups:
7
+ - name: master
8
+ jobs:
9
+ % RUBIES[:mri].last(2).each do |ruby_version|
10
+ - ruby-<%= ruby_version %>
11
+ % end
12
+ % RUBIES[:jruby].last(2).each do |ruby_version|
13
+ - jruby-<%= ruby_version %>
14
+ % end
15
+
16
+ - name: PRs
17
+ jobs:
18
+ - pr-pending
19
+ % RUBIES[:mri].last(1).each do |ruby_version|
20
+ - ruby-<%= ruby_version %>-pr
21
+ % end
22
+ % RUBIES[:jruby].last(1).each do |ruby_version|
23
+ - jruby-<%= ruby_version %>-pr
24
+ % end
25
+ - pr-success
26
+
27
+ - name: allow-failure
28
+ jobs:
29
+ % RUBIES[:windows].last(2).each do |ruby_version|
30
+ - win-ruby-<%= ruby_version %>-devkit
31
+ % end
32
+
33
+ resource_types:
34
+ - name: pull-request
35
+ type: docker-image
36
+ source:
37
+ repository: jtarchie/pr
38
+
1
39
  resources:
2
40
  - name: ci
3
41
  type: git
@@ -13,6 +51,15 @@ resources:
13
51
  branch: master
14
52
  ignore_paths:
15
53
  - concourse/**
54
+
55
+ - name: chromedriver-helper-pr
56
+ type: pull-request
57
+ source:
58
+ repo: flavorjones/chromedriver-helper
59
+ access_token: {{github-repo-status-access-token}}
60
+ ignore_paths:
61
+ - concourse/**
62
+
16
63
  jobs:
17
64
  % RUBIES[:mri].last(2).each do |ruby_version|
18
65
  - name: ruby-<%= ruby_version %>
@@ -53,3 +100,108 @@ jobs:
53
100
  path: powershell
54
101
  args: ["-File", "ci/concourse/tasks/rake-test/run.ps1"]
55
102
  % end
103
+
104
+ % RUBIES[:jruby].last(2).each do |ruby_version|
105
+ - name: jruby-<%= ruby_version %>
106
+ public: true
107
+ plan:
108
+ - get: ci
109
+ - get: chromedriver-helper
110
+ trigger: true
111
+ - task: rake-test
112
+ config:
113
+ platform: linux
114
+ image_resource:
115
+ type: docker-image
116
+ source: {repository: jruby, tag: "<%= ruby_version %>-jdk"}
117
+ inputs:
118
+ - name: ci
119
+ - name: chromedriver-helper
120
+ params:
121
+ JAVA_OPTS: "-Dfile.encoding=UTF8" # https://github.com/docker-library/openjdk/issues/32
122
+ run:
123
+ path: ci/concourse/tasks/rake-test/run.sh
124
+ % end
125
+
126
+ #
127
+ # PRs
128
+ #
129
+ - name: pr-pending
130
+ public: true
131
+ plan:
132
+ - get: ci
133
+ - get: chromedriver-helper-pr
134
+ trigger: true
135
+ version: every
136
+ - put: chromedriver-helper-pr
137
+ params: {path: chromedriver-helper-pr, status: pending}
138
+
139
+ % RUBIES[:mri].last(1).each do |ruby_version|
140
+ - name: ruby-<%= ruby_version %>-pr
141
+ public: true
142
+ max_in_flight: 1
143
+ plan:
144
+ - get: ci
145
+ - get: chromedriver-helper-pr
146
+ trigger: true
147
+ version: every
148
+ passed: [pr-pending]
149
+ - task: rake-test
150
+ config:
151
+ platform: linux
152
+ image_resource:
153
+ type: docker-image
154
+ source: {repository: ruby, tag: "<%= ruby_version %>"}
155
+ inputs:
156
+ - name: ci
157
+ - name: chromedriver-helper-pr
158
+ path: chromedriver-helper
159
+ run:
160
+ path: ci/concourse/tasks/rake-test/run.sh
161
+ on_failure: *notify_failure_to_pr
162
+ % end
163
+
164
+ % RUBIES[:jruby].last(1).each do |ruby_version|
165
+ - name: jruby-<%= ruby_version %>-pr
166
+ public: true
167
+ max_in_flight: 1
168
+ plan:
169
+ - get: ci
170
+ - get: chromedriver-helper-pr
171
+ trigger: true
172
+ version: every
173
+ passed: [pr-pending]
174
+ - task: rake-test
175
+ attempts: 3
176
+ config:
177
+ platform: linux
178
+ image_resource:
179
+ type: docker-image
180
+ source: {repository: jruby, tag: "<%= ruby_version %>-jdk"}
181
+ inputs:
182
+ - name: ci
183
+ - name: chromedriver-helper-pr
184
+ path: chromedriver-helper
185
+ params:
186
+ JAVA_OPTS: "-Dfile.encoding=UTF8" # https://github.com/docker-library/openjdk/issues/32
187
+ run:
188
+ path: ci/concourse/tasks/rake-test/run.sh
189
+ on_failure: *notify_failure_to_pr
190
+ % end
191
+
192
+ - name: pr-success
193
+ public: true
194
+ disable_manual_trigger: true
195
+ plan:
196
+ - get: chromedriver-helper-pr
197
+ trigger: true
198
+ version: every
199
+ passed:
200
+ % RUBIES[:mri].last(1).each do |ruby_version|
201
+ - ruby-<%= ruby_version %>-pr
202
+ % end
203
+ % RUBIES[:jruby].last(1).each do |ruby_version|
204
+ - jruby-<%= ruby_version %>-pr
205
+ % end
206
+ - put: chromedriver-helper-pr
207
+ params: {path: chromedriver-helper-pr, status: success}
@@ -0,0 +1 @@
1
+ Selenium::WebDriver::Chrome.driver_path=Gem.bin_path("chromedriver-helper","chromedriver-helper")
@@ -1,5 +1,5 @@
1
1
  module Chromedriver
2
2
  class Helper
3
- VERSION = "1.2.0"
3
+ VERSION = "2.0.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chromedriver-helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Dalessio
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-04 00:00:00.000000000 Z
11
+ date: 2018-09-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -85,7 +85,7 @@ description: Easy installation and use of chromedriver, the Chromium project's s
85
85
  email:
86
86
  - mike.dalessio@gmail.com
87
87
  executables:
88
- - chromedriver
88
+ - chromedriver-helper
89
89
  - chromedriver-update
90
90
  extensions: []
91
91
  extra_rdoc_files: []
@@ -98,12 +98,13 @@ files:
98
98
  - LICENSE.txt
99
99
  - README.md
100
100
  - Rakefile
101
- - bin/chromedriver
101
+ - bin/chromedriver-helper
102
102
  - bin/chromedriver-update
103
103
  - chromedriver-helper.gemspec
104
104
  - concourse/chromedriver-helper.yml
105
105
  - concourse/tasks/rake-test/run.ps1
106
106
  - concourse/tasks/rake-test/run.sh
107
+ - lib/chromedriver-helper.rb
107
108
  - lib/chromedriver/helper.rb
108
109
  - lib/chromedriver/helper/google_code_parser.rb
109
110
  - lib/chromedriver/helper/version.rb
@@ -132,7 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
133
  version: '0'
133
134
  requirements: []
134
135
  rubyforge_project:
135
- rubygems_version: 2.6.12
136
+ rubygems_version: 2.7.7
136
137
  signing_key:
137
138
  specification_version: 4
138
139
  summary: Easy installation and use of chromedriver.