appium_lib_core 4.1.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +148 -275
- data/README.md +13 -8
- data/Rakefile +4 -0
- data/appium_lib_core.gemspec +5 -8
- data/bin/console +0 -4
- data/lib/appium_lib_core/android/device/auth_finger_print.rb +2 -1
- data/lib/appium_lib_core/android/device.rb +4 -4
- data/lib/appium_lib_core/common/base/bridge.rb +291 -90
- data/lib/appium_lib_core/common/base/capabilities.rb +10 -3
- data/lib/appium_lib_core/common/base/device_ime.rb +49 -0
- data/lib/appium_lib_core/common/base/driver.rb +225 -187
- data/lib/appium_lib_core/common/base/driver_settings.rb +51 -0
- data/lib/appium_lib_core/common/base/has_location.rb +80 -0
- data/lib/appium_lib_core/common/base/has_network_connection.rb +56 -0
- data/lib/appium_lib_core/common/base/http_default.rb +1 -3
- data/lib/appium_lib_core/common/base/remote_status.rb +31 -0
- data/lib/appium_lib_core/common/base/rotable.rb +54 -0
- data/lib/appium_lib_core/common/base/screenshot.rb +6 -6
- data/lib/appium_lib_core/common/base/search_context.rb +20 -5
- data/lib/appium_lib_core/common/base.rb +1 -3
- data/lib/appium_lib_core/common/command.rb +255 -4
- data/lib/appium_lib_core/common/device/app_management.rb +2 -14
- data/lib/appium_lib_core/common/device/image_comparison.rb +12 -4
- data/lib/appium_lib_core/common/device/keyevent.rb +4 -4
- data/lib/appium_lib_core/common/{command/mjsonwp.rb → device/orientation.rb} +14 -11
- data/lib/appium_lib_core/common/device/touch_actions.rb +2 -0
- data/lib/appium_lib_core/common/device/value.rb +6 -6
- data/lib/appium_lib_core/common/error.rb +4 -1
- data/lib/appium_lib_core/common/log.rb +4 -1
- data/lib/appium_lib_core/common/touch_action/multi_touch.rb +19 -0
- data/lib/appium_lib_core/common/touch_action/touch_actions.rb +16 -2
- data/lib/appium_lib_core/common/wait.rb +38 -6
- data/lib/appium_lib_core/device.rb +1 -5
- data/lib/appium_lib_core/driver.rb +42 -50
- data/lib/appium_lib_core/{patch.rb → element.rb} +66 -9
- data/lib/appium_lib_core/ios/uiautomation/patch.rb +1 -1
- data/lib/appium_lib_core/{common/base/command.rb → mac2/bridge.rb} +9 -8
- data/lib/appium_lib_core/mac2/device/screen.rb +48 -0
- data/lib/appium_lib_core/mac2/device.rb +92 -0
- data/lib/appium_lib_core/mac2.rb +17 -0
- data/lib/appium_lib_core/version.rb +2 -2
- data/lib/appium_lib_core.rb +2 -5
- metadata +29 -82
- data/.github/ISSUE_TEMPLATE/issue-report.md +0 -29
- data/.github/contributing.md +0 -26
- data/.github/issue_template.md +0 -20
- data/.github/workflows/unittest.yml +0 -68
- data/.gitignore +0 -18
- data/.rubocop.yml +0 -58
- data/azure-pipelines.yml +0 -15
- data/ci-jobs/functional/android_setup.yml +0 -3
- data/ci-jobs/functional/ios_setup.yml +0 -7
- data/ci-jobs/functional/publish_test_result.yml +0 -18
- data/ci-jobs/functional/run_appium.yml +0 -25
- data/ci-jobs/functional/start-emulator.sh +0 -26
- data/ci-jobs/functional_test.yml +0 -298
- data/docs/mobile_command.md +0 -34
- data/lib/appium_lib_core/common/base/bridge/mjsonwp.rb +0 -81
- data/lib/appium_lib_core/common/base/bridge/w3c.rb +0 -252
- data/lib/appium_lib_core/common/command/common.rb +0 -110
- data/lib/appium_lib_core/common/command/w3c.rb +0 -56
- data/release_notes.md +0 -816
- data/script/commands.rb +0 -200
data/CHANGELOG.md
CHANGED
@@ -5,68 +5,193 @@ Read `release_notes.md` for commit level details.
|
|
5
5
|
## [Unreleased]
|
6
6
|
|
7
7
|
### Enhancements
|
8
|
-
- Ruby 3.0 support
|
9
8
|
|
10
9
|
### Bug fixes
|
11
10
|
|
12
11
|
### Deprecations
|
13
12
|
|
14
|
-
## [
|
13
|
+
## [5.3.0] - 2022-08-10
|
15
14
|
|
16
15
|
### Enhancements
|
17
|
-
|
16
|
+
|
17
|
+
- Allow selenium webdriver version 4.4 [#404](https://github.com/appium/ruby_lib_core/pull/404)
|
18
|
+
|
19
|
+
## [5.2.2] - 2022-06-26
|
20
|
+
|
21
|
+
### Enhancements
|
22
|
+
- Relax the selenium webdriver version restriction of `4.2.0`
|
18
23
|
|
19
24
|
### Bug fixes
|
25
|
+
- Remove undefined module in selenium webdriver version `4.3.0`
|
20
26
|
|
21
|
-
|
27
|
+
## [5.2.1] - 2022-06-24
|
22
28
|
|
23
|
-
|
29
|
+
### Bug fixes
|
30
|
+
- Restrict the selenium webdriver version to `4.2.0`
|
24
31
|
|
25
|
-
|
32
|
+
## [5.2.0] - 2022-06-19
|
26
33
|
|
27
34
|
### Enhancements
|
28
35
|
|
29
|
-
|
36
|
+
- Update base Selenium Ruby client to `4.2+`
|
37
|
+
- Please call `key_action` or set `[::Selenium::WebDriver::Interactions.key('keyboard')]` as the deviecs parameter to build `driver.send_keys().perform` W3C action.
|
38
|
+
- `driver.key_action.send_keys('xxx').perform` instead of `driver.action.send_keys('xxx').perform`, or `driver.action(devices: [::Selenium::WebDriver::Interactions.key('keyboard')]).send_keys('xxx').perform`.
|
39
|
+
- [This PR change](https://github.com/appium/ruby_lib_core/pull/381/files) will help to update your some actions.
|
30
40
|
|
31
|
-
|
32
|
-
- No longer work with `forceMjsonwp` capability to force the session MJSONWP
|
41
|
+
## [5.1.2] - 2022-06-02
|
33
42
|
|
34
|
-
|
43
|
+
### Enhancements
|
44
|
+
|
45
|
+
- Limit selenium webdriver version less than `4.2`
|
46
|
+
|
47
|
+
## [5.1.1] - 2022-04-18
|
35
48
|
|
36
49
|
### Enhancements
|
37
50
|
|
38
|
-
|
39
|
-
- Fix `install_app` to be able to set no args for options
|
51
|
+
- Remove unneccessry files from gem package to reduce the size.
|
40
52
|
|
41
|
-
|
53
|
+
## [5.1.0] - 2021-12-25
|
42
54
|
|
43
|
-
|
55
|
+
### Enhancements
|
56
|
+
- Make default pointerType `touch` for the pointer in W3C actions instead of `mouse` for Appium
|
57
|
+
- This change should not affect W3C actions
|
58
|
+
|
59
|
+
## [5.0.3] - 2021-12-13
|
44
60
|
|
45
61
|
### Enhancements
|
46
|
-
-
|
47
|
-
-
|
62
|
+
- Can add more arguments in `install_app`
|
63
|
+
- e.g. Add `timeoutMs` for XCUITest driver as `@driver.install_app("/path/to/test.ipa", timeoutMs: 20000)`
|
64
|
+
|
65
|
+
### Bug fixes
|
66
|
+
- (internal) Allow to access to `bridge` attribute in `driver` instance for appium_flutter_finder
|
67
|
+
|
68
|
+
## [5.0.2] - 2021-12-01
|
48
69
|
|
49
70
|
### Bug fixes
|
71
|
+
- (internal) Fix firstMatch format in a new session creation
|
72
|
+
|
73
|
+
## [5.0.1] - 2021-11-23
|
74
|
+
|
75
|
+
### Enhancements
|
76
|
+
- Relaxed version restriction of selenium-webdriver
|
77
|
+
|
78
|
+
## [5.0.0] - 2021-11-05
|
79
|
+
|
80
|
+
### Enhancements
|
81
|
+
|
82
|
+
- Update base selenium webdriver version to `v4`
|
83
|
+
- Base Selenium Ruby binding is now v4
|
84
|
+
- Support only W3C WebDriver spec (and a few Appium specific commands)
|
85
|
+
- Support Ruby 2.6+
|
86
|
+
- Add `driver#wait`, `driver#wait_until`, `driver#wait_true`, `driver#wait_until_true` syntaxes
|
87
|
+
- Can give `driver` instance as its block variable
|
88
|
+
- `element.id` returns the element id instead of `element.ref`.
|
89
|
+
- `element.ref` now returns an array.
|
90
|
+
- Removed `desired_capabilities` as capabilities for `Appium::Core#for`. Please use `capabilities` key name instead.
|
91
|
+
- e.g. `Appium::Core.for capabilities: {...}` instead of `Appium::Core.for desired_capabilities: {...}`
|
92
|
+
- Removed methods that had _Deprecated_ mark
|
93
|
+
- Removed `driver#screenshot`. Please use `driver#save_screenshot` instead
|
94
|
+
- Removed `driver#send_keys` to send keys to an active element. Please use `driver.action.send_keys('happy testing').perform` instead
|
95
|
+
- Removed `forceMjsonwp` to send only MJSONWP capabilities since Selenium cleint v4 no longer supports MJSONWP
|
96
|
+
- No longer set default `timeouts` as `0`
|
97
|
+
- ruby_lib_core calls `/timeouts` endpoint only when `appium_lib: { wait: 5 }` is provided explicitly
|
98
|
+
- Raises `::Appium::Core::Error::ArgumentError` instead of `ArgumentError` for this library specific argument errors
|
99
|
+
- Removed Selendroid related methods
|
50
100
|
|
51
101
|
### Deprecations
|
102
|
+
- `Appium::Core::TouchAction` and `Appium::Core::MultiTouch` are deprecated
|
103
|
+
- Please use W3C actions instead http://appium.io/docs/en/commands/interactions/actions/
|
104
|
+
- More working examples:
|
105
|
+
- [test/functional/android/webdriver/w3c_actions_test.rb](test/functional/android/webdriver/w3c_actions_test.rb)
|
106
|
+
- [test/functional/ios/webdriver/w3c_actions_test.rb](test/functional/ios/webdriver/w3c_actions_test.rb)
|
107
|
+
- [test/functional/common_w3c_actions.rb](test/functional/common_w3c_actions.rb)
|
108
|
+
- https://www.selenium.dev/documentation/support_packages/mouse_and_keyboard_actions_in_detail/
|
109
|
+
- https://www.youtube.com/watch?v=oAJ7jwMNFVU
|
110
|
+
- https://appiumpro.com/editions/30-ios-specific-touch-action-methods
|
111
|
+
- https://appiumpro.com/editions/29-automating-complex-gestures-with-the-w3c-actions-api
|
112
|
+
- `launch_app`, `close_app` and `reset`. Please read [issues#15807](https://github.com/appium/appium/issues/15807) for more details.
|
113
|
+
- `activate_app` or a new session request can be alternatives of `launch_app`
|
114
|
+
- `terminate_app` or close the session request can be alternatives of `close_app`
|
115
|
+
- Close current session and creating a new session, or `terminate_app` and `launch_app` can be alternatives of `reset`
|
52
116
|
|
53
|
-
## [
|
117
|
+
## [4.7.1] - 2021-09-26
|
54
118
|
|
55
119
|
### Enhancements
|
120
|
+
- Allow to override an existing method by `Appium::Core::Base::Driver#add_command` since Appium drivers/plugins allow to override them
|
56
121
|
|
57
|
-
|
58
|
-
|
122
|
+
## [4.7.0] - 2021-07-17
|
123
|
+
|
124
|
+
### Enhancements
|
125
|
+
- Add `satellites` option in `Appium::Core::Base::Driver#set_location`
|
126
|
+
|
127
|
+
## [4.6.0] - 2021-06-03
|
128
|
+
|
129
|
+
### Enhancements
|
130
|
+
- Add `Appium::Core::Base::Driver#add_command` to allow you to add your own command
|
131
|
+
|
132
|
+
## [4.5.0] - 2021-03-14
|
133
|
+
|
134
|
+
### Enhancements
|
135
|
+
- Add `speed` argument for `Appium::Core::Base::Driver#set_location` since Appium 1.21.0
|
136
|
+
- Add `multiple` and `match_neighbour_threshold` arguments for `Appium::Core::Base::Driver#find_image_occurrence`
|
137
|
+
|
138
|
+
## [4.4.1(4.4.0)] - 2021-02-15(2021-02-13)
|
139
|
+
|
140
|
+
### Enhancements
|
141
|
+
- Returns `{}` any errors in `Core#appium_server_version` to prevent errors in some cases
|
142
|
+
|
143
|
+
## [4.3.1(4.3.0)] - 2021-02-07(2021-02-05)
|
144
|
+
|
145
|
+
### Enhancements
|
146
|
+
- Add `start_recording_screen` for Mac2 driver
|
147
|
+
|
148
|
+
## [4.2.1] - 2021-01-10
|
149
|
+
|
150
|
+
### Enhancements
|
151
|
+
- Refactor routable
|
152
|
+
|
153
|
+
## [4.2.0] - 2021-01-02
|
154
|
+
|
155
|
+
### Enhancements
|
156
|
+
- Add `Element#screenshot`, `Element#screenshot_as` and `Element#save_screenshot` in Element module
|
157
|
+
- `Element#screenshot_as` and `Element#save_screenshot` are same as `Driver#element_screenshot_as` and `Driver#save_element_screenshot`
|
158
|
+
- `Element#screenshot` is same as `Element#screenshot_as(:base64)`
|
159
|
+
|
160
|
+
## [4.1.1] - 2020-12-25
|
161
|
+
|
162
|
+
### Enhancements
|
163
|
+
- Ruby 3.0 support
|
164
|
+
- Arguments in `@driver.execute_cdp`
|
165
|
+
- It should be like `@driver.execute_cdp 'Page.captureScreenshot', quality: 50, format: 'jpeg'` as keyword arguments
|
166
|
+
instead of `@driver.execute_cdp 'Page.captureScreenshot', { quality: 50, format: 'jpeg' }` in Ruby 3
|
167
|
+
|
168
|
+
## [4.0.0] - 2020-12-19
|
169
|
+
|
170
|
+
Supported Ruby version is 2.4+
|
59
171
|
|
60
172
|
### Deprecations
|
173
|
+
- No longer work with `forceMjsonwp` capability to force the session MJSONWP
|
61
174
|
|
62
|
-
## [3.
|
175
|
+
## [3.11.1] - 2020-11-20
|
176
|
+
|
177
|
+
### Bug fixes
|
178
|
+
- Fix `install_app` to be able to set no args for options
|
179
|
+
|
180
|
+
## [3.11.0] - 2020-08-01
|
63
181
|
|
64
182
|
### Enhancements
|
65
|
-
-
|
183
|
+
- Security update [GHSA-2v5c-755p-p4gv](https://github.com/advisories/GHSA-2v5c-755p-p4gv)
|
184
|
+
- Affects only _::Appium::Core::WebSocket_
|
185
|
+
|
186
|
+
## [3.10.1] - 2020-06-29
|
66
187
|
|
67
188
|
### Bug fixes
|
189
|
+
- Fix duplication warning of `execute_cdp`
|
68
190
|
|
69
|
-
|
191
|
+
## [3.10.0] - 2020-06-09
|
192
|
+
|
193
|
+
### Enhancements
|
194
|
+
- Remove deprecated `Selenium::WebDriver::Error::TimeOutError`
|
70
195
|
|
71
196
|
## [3.9.0] - 2020-05-31
|
72
197
|
|
@@ -86,10 +211,6 @@ Supported Ruby version is 2.4+
|
|
86
211
|
@driver = Appium::Core.for(opts).start_driver
|
87
212
|
```
|
88
213
|
|
89
|
-
### Bug fixes
|
90
|
-
|
91
|
-
### Deprecations
|
92
|
-
|
93
214
|
## [3.8.0] - 2020-05-17
|
94
215
|
|
95
216
|
### Enhancements
|
@@ -99,8 +220,6 @@ Supported Ruby version is 2.4+
|
|
99
220
|
### Bug fixes
|
100
221
|
- Fix `x-idempotency-key` header to add it only in new session request (https://github.com/appium/ruby_lib_core/issues/262)
|
101
222
|
|
102
|
-
### Deprecations
|
103
|
-
|
104
223
|
## [3.7.0] - 2020-04-18
|
105
224
|
|
106
225
|
### Enhancements
|
@@ -109,76 +228,44 @@ Supported Ruby version is 2.4+
|
|
109
228
|
- Add chrome devtools endpoint which is available chrome module in Selenium Ruby binding
|
110
229
|
- https://github.com/appium/appium-base-driver/pull/405
|
111
230
|
|
112
|
-
### Bug fixes
|
113
|
-
|
114
|
-
### Deprecations
|
115
|
-
|
116
231
|
## [3.6.1, 3.6.0] - 2020-03-15
|
117
232
|
|
118
233
|
### Enhancements
|
119
234
|
- Add screen record feature for Windows driver (https://github.com/appium/appium-windows-driver/pull/66)
|
120
235
|
- `#start_recording_screen`, `#stop_recording_screen`
|
121
236
|
|
122
|
-
### Bug fixes
|
123
|
-
|
124
|
-
### Deprecations
|
125
|
-
|
126
237
|
## [3.5.0] - 2020-01-11
|
127
238
|
|
128
239
|
### Enhancements
|
129
240
|
- Add `:viewmatcher` selector like `@driver.find_elements :view_matcher, { name: 'withText', args: %w(Accessibility), class: 'androidx.test.espresso.matcher.ViewMatchers' }`
|
130
241
|
|
131
|
-
### Bug fixes
|
132
|
-
|
133
|
-
### Deprecations
|
134
|
-
|
135
242
|
## [3.4.2] - 2019-12-29
|
136
243
|
|
137
244
|
### Enhancements
|
138
245
|
- Add `attr_reader :bridge` for flutter driver not to use `send`
|
139
246
|
- https://github.com/truongsinh/appium-flutter-driver/pull/35
|
140
247
|
|
141
|
-
### Bug fixes
|
142
|
-
|
143
|
-
### Deprecations
|
144
|
-
|
145
248
|
## [3.4.0, 3.4.1] - 2019-12-26, 2019-12-27
|
146
249
|
|
147
250
|
### Enhancements
|
148
251
|
- Fix Ruby 2.7 warnings
|
149
252
|
|
150
|
-
### Bug fixes
|
151
|
-
|
152
|
-
### Deprecations
|
153
|
-
|
154
253
|
## [3.3.0] - 2019-11-08
|
155
254
|
|
156
255
|
### Enhancements
|
157
256
|
- Add `Logs#event` to post a custom log by `@driver.logs.event vendor: 'appium', event: 'funEvent'`
|
158
257
|
- Add `Logs#events` to get events by `@driver.logs.events`. It is equal to `@driver.session_capabilities['events']`
|
159
258
|
|
160
|
-
### Bug fixes
|
161
|
-
|
162
|
-
### Deprecations
|
163
|
-
|
164
259
|
## [3.2.3] - 2019-09-30
|
165
260
|
|
166
261
|
### Enhancements
|
167
262
|
- Add `system_bars` as an alias to `get_system_bars`
|
168
263
|
|
169
|
-
### Bug fixes
|
170
|
-
|
171
|
-
### Deprecations
|
172
|
-
|
173
264
|
## [3.2.2] - 2019-08-04
|
174
265
|
|
175
|
-
### Enhancements
|
176
|
-
|
177
266
|
### Bug fixes
|
178
267
|
- Fixed parameters of `remove_app`
|
179
268
|
|
180
|
-
### Deprecations
|
181
|
-
|
182
269
|
## [3.2.1] - 2019-07-19
|
183
270
|
|
184
271
|
### Enhancements
|
@@ -200,39 +287,23 @@ Supported Ruby version is 2.4+
|
|
200
287
|
- Add `execute_driver` to run a batch script
|
201
288
|
- It requires Appium version which has `execute_driver` support
|
202
289
|
|
203
|
-
### Bug fixes
|
204
|
-
|
205
|
-
### Deprecations
|
206
|
-
|
207
290
|
## [3.1.3] - 2019-06-18
|
208
291
|
|
209
292
|
### Enhancements
|
210
293
|
- Add arguments for `start_activity`
|
211
294
|
- `intentAction`, `intentCategory`, `intentFlags`, `dontStopAppOnReset`
|
212
295
|
|
213
|
-
### Bug fixes
|
214
|
-
|
215
|
-
### Deprecations
|
216
|
-
|
217
296
|
## [3.1.2] - 2019-05-10
|
218
297
|
|
219
298
|
### Enhancements
|
220
299
|
- Add `sessions` command to get all available sessions on the Appium server
|
221
300
|
- [internal] Tweak error messages in emulator module
|
222
301
|
|
223
|
-
### Bug fixes
|
224
|
-
|
225
|
-
### Deprecations
|
226
|
-
|
227
302
|
## [3.1.1] - 2019-04-26
|
228
303
|
|
229
304
|
### Enhancements
|
230
305
|
- [internal] Catch `Selenium::WebDriver::Error::TimeoutError` which will be used instead of `Selenium::WebDriver::Error::TimeOutError`
|
231
306
|
|
232
|
-
### Bug fixes
|
233
|
-
|
234
|
-
### Deprecations
|
235
|
-
|
236
307
|
## [3.1.0] - 2019-03-31
|
237
308
|
|
238
309
|
### Enhancements
|
@@ -240,28 +311,16 @@ Supported Ruby version is 2.4+
|
|
240
311
|
- `platformName: :tvos, automationName: :xcuitest` can work for iOS tvOS
|
241
312
|
- It requires Appium 1.13
|
242
313
|
|
243
|
-
### Bug fixes
|
244
|
-
|
245
|
-
### Deprecations
|
246
|
-
|
247
314
|
## [3.0.4] - 2019-03-24
|
248
315
|
|
249
316
|
### Enhancements
|
250
317
|
- Add `pixelFormat` argument in screen record for iOS
|
251
318
|
|
252
|
-
### Bug fixes
|
253
|
-
|
254
|
-
### Deprecations
|
255
|
-
|
256
319
|
## [3.0.3] - 2019-03-11
|
257
320
|
|
258
321
|
### Enhancements
|
259
322
|
- [internal] Bump Rubocop target Ruby version to Ruby 2.3
|
260
323
|
|
261
|
-
### Bug fixes
|
262
|
-
|
263
|
-
### Deprecations
|
264
|
-
|
265
324
|
## [3.0.2] - 2019-03-07
|
266
325
|
|
267
326
|
### Enhancements
|
@@ -271,17 +330,11 @@ Supported Ruby version is 2.4+
|
|
271
330
|
- [internal] Fixed typo in `Emulator#gsm_signal` [#196](https://github.com/appium/ruby_lib_core/pull/196)
|
272
331
|
- Thanks [khanhdodang](https://github.com/khanhdodang)
|
273
332
|
|
274
|
-
### Deprecations
|
275
|
-
|
276
333
|
## [3.0.1] - 2019-02-25
|
277
334
|
|
278
335
|
### Enhancements
|
279
336
|
- Add `:data_matcher` find_element/s attribute [appium-espresso-driver#386](https://github.com/appium/appium-espresso-driver/pull/386)
|
280
337
|
|
281
|
-
### Bug fixes
|
282
|
-
|
283
|
-
### Deprecations
|
284
|
-
|
285
338
|
## [3.0.0] - 2019-02-06
|
286
339
|
|
287
340
|
This release has a breaking change about an implicit wait.
|
@@ -307,8 +360,6 @@ The behaviour follows the default spec in WebDriver.
|
|
307
360
|
### Bug fixes
|
308
361
|
- Fix potential override of `AppManagement#background_app` [#188](https://github.com/appium/ruby_lib_core/pull/188)
|
309
362
|
|
310
|
-
### Deprecations
|
311
|
-
|
312
363
|
## [2.3.4] - 2019-01-31
|
313
364
|
### Enhancements
|
314
365
|
- Add 3D touch option for `TouchAction#press` [appium/WebDriverAgent#79](https://github.com/appium/WebDriverAgent/pull/79)
|
@@ -317,16 +368,10 @@ The behaviour follows the default spec in WebDriver.
|
|
317
368
|
### Bug fixes
|
318
369
|
- Stop sending blank value in `start_activity`
|
319
370
|
|
320
|
-
### Deprecations
|
321
|
-
|
322
371
|
## [2.3.3] - 2019-01-22
|
323
|
-
### Enhancements
|
324
|
-
|
325
372
|
### Bug fixes
|
326
373
|
- Add `*args, &block` in method missing in `Selenium::WebDriver::Element` [#184](https://github.com/appium/ruby_lib_core/pull/184)
|
327
374
|
|
328
|
-
### Deprecations
|
329
|
-
|
330
375
|
## [2.3.2] - 2019-01-20
|
331
376
|
### Enhancements
|
332
377
|
- Add alias for some method calls
|
@@ -337,18 +382,12 @@ The behaviour follows the default spec in WebDriver.
|
|
337
382
|
### Bug fixes
|
338
383
|
- `ServerError` inherits `CoreError` in order to handle it as an exception
|
339
384
|
|
340
|
-
### Deprecations
|
341
|
-
|
342
385
|
## [2.3.1] - 2019-01-13
|
343
386
|
### Enhancements
|
344
387
|
- `set_network_connection` accepts keys as same as `network_connection_type` in addition to numbers
|
345
388
|
- `{ :airplane_mode: 1, wifi: 2, data: 4, all: 6, none: 0 }`
|
346
389
|
- Read [documentation](https://www.rubydoc.info/github/appium/ruby_lib_core/master/Appium/Core/Android/Device#set_network_connection-instance_method) more
|
347
390
|
|
348
|
-
### Bug fixes
|
349
|
-
|
350
|
-
### Deprecations
|
351
|
-
|
352
391
|
## [2.3.0] - 2019-01-07
|
353
392
|
### Enhancements
|
354
393
|
- Use `Base64.strict_encode64` when this client sends `Base64` encoded data to server
|
@@ -356,33 +395,19 @@ The behaviour follows the default spec in WebDriver.
|
|
356
395
|
- Continues to decode base 64 data following `decode64` to accept RFC 2045 format
|
357
396
|
- Add `query_app_state` as an alias of `app_state` to get application status
|
358
397
|
|
359
|
-
### Bug fixes
|
360
|
-
|
361
|
-
### Deprecations
|
362
|
-
|
363
398
|
## [2.2.2] - 2018-12-22
|
364
399
|
### Enhancements
|
365
400
|
- Append `appium` in header: `appium/ruby_lib_core/2.2.1 (selenium/3.141.0 (ruby macosx))`
|
366
401
|
|
367
|
-
### Bug fixes
|
368
|
-
|
369
|
-
### Deprecations
|
370
|
-
|
371
402
|
## [2.2.1] - 2018-12-08
|
372
|
-
### Enhancements
|
373
|
-
|
374
403
|
### Bug fixes
|
375
404
|
- Reduce warnings for method definitions
|
376
405
|
|
377
|
-
### Deprecations
|
378
|
-
|
379
406
|
## [2.2.0] - 2018-12-01
|
380
407
|
### Enhancements
|
381
408
|
- Add `::Appium::Core::Base.platform` to call `::Selenium::WebDriver::Platform`
|
382
409
|
- Can identify platform using `::Appium::Core::Base.platform.windows?` for example
|
383
410
|
|
384
|
-
### Bug fixes
|
385
|
-
|
386
411
|
### Deprecations
|
387
412
|
- `:offset_x` and `:offset_y` in `TouchAction#swipe` is deprecated in favor of `:end_x` and `:end_y`
|
388
413
|
|
@@ -401,10 +426,6 @@ The behaviour follows the default spec in WebDriver.
|
|
401
426
|
- Update `start_recording_screen` for iOS, Appium 1.10.0
|
402
427
|
- Add `:video_scale` and update `:video_type`
|
403
428
|
|
404
|
-
### Bug fixes
|
405
|
-
|
406
|
-
### Deprecations
|
407
|
-
|
408
429
|
## [2.1.0] - 2018-11-14
|
409
430
|
### Enhancements
|
410
431
|
- Support below style _1_, has _url_ parameter, in addition to style _2_
|
@@ -417,27 +438,15 @@ The behaviour follows the default spec in WebDriver.
|
|
417
438
|
```
|
418
439
|
- Add `:video_fps` param for screen recording in iOS(XCUITest) to sync with Appium 1.10.0
|
419
440
|
|
420
|
-
### Bug fixes
|
421
|
-
|
422
|
-
### Deprecations
|
423
|
-
|
424
441
|
## [2.0.6] - 2018-11-08
|
425
442
|
### Enhancements
|
426
443
|
- Allow selenium update following Pi versioning like 3.141.0
|
427
444
|
- [internal] Update dev libraries
|
428
445
|
|
429
|
-
### Bug fixes
|
430
|
-
|
431
|
-
### Deprecations
|
432
|
-
|
433
446
|
## [2.0.5] - 2018-10-30
|
434
447
|
### Enhancements
|
435
448
|
- [internal] No longer send `strategy: :tapOutside` as default value in Android
|
436
449
|
|
437
|
-
### Bug fixes
|
438
|
-
|
439
|
-
### Deprecations
|
440
|
-
|
441
450
|
## [2.0.4] - 2018-10-19
|
442
451
|
### Enhancements
|
443
452
|
- Add custom locator in the future work: [element-finding-plugins](https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/element-finding-plugins.md)
|
@@ -447,27 +456,15 @@ The behaviour follows the default spec in WebDriver.
|
|
447
456
|
|
448
457
|
```
|
449
458
|
|
450
|
-
### Bug fixes
|
451
|
-
|
452
|
-
### Deprecations
|
453
|
-
|
454
459
|
## [2.0.3] - 2018-10-11
|
455
460
|
### Enhancements
|
456
461
|
- Set `'selenium-webdriver', '~> 3.14.1'`
|
457
462
|
|
458
|
-
### Bug fixes
|
459
|
-
|
460
|
-
### Deprecations
|
461
|
-
|
462
463
|
## [2.0.2] - 2018-10-02
|
463
464
|
### Enhancements
|
464
465
|
- Add finger print feature for Android emulators [#13](https://github.com/appium/ruby_lib_core/issues/13)
|
465
466
|
- Add `keyboard_shown?` and `context=` as aliases of `is_keyboard_shown` and `set_contex`
|
466
467
|
|
467
|
-
### Bug fixes
|
468
|
-
|
469
|
-
### Deprecations
|
470
|
-
|
471
468
|
## [2.0.1] - 2018-09-01
|
472
469
|
### Enhancements
|
473
470
|
- Add `Appium::Core::Base::Driver#perform_actions` to send multiple actions. See `test_multiple_actions` as an example.
|
@@ -475,8 +472,6 @@ The behaviour follows the default spec in WebDriver.
|
|
475
472
|
### Bug fixes
|
476
473
|
- Fix desired capability for W3C protocol under selenium grid environment [#137](https://github.com/appium/ruby_lib_core/issues/137)
|
477
474
|
|
478
|
-
### Deprecations
|
479
|
-
|
480
475
|
## [2.0.0] - 2018-08-25
|
481
476
|
|
482
477
|
This release has a breaking change for creating core. Thus, I've bumped the major version.
|
@@ -484,20 +479,14 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
484
479
|
### Enhancements
|
485
480
|
- use `autoload` to load Android/iOS modules
|
486
481
|
|
487
|
-
### Bug fixes
|
488
|
-
|
489
482
|
### Deprecations
|
490
483
|
- `@core = Appium::Core.for(self, opts)` is deprecated in favor of `@core = Appium::Core.for(opts)`
|
491
484
|
- Call `extend Appium::Core::Device` if you'd like to extend methods defined in `Appium::Core`
|
492
485
|
- Read [#816](https://github.com/appium/ruby_lib/pull/816) as an example
|
493
486
|
|
494
487
|
## [1.9.2] - 2018-08-23
|
495
|
-
### Enhancements
|
496
|
-
|
497
488
|
### Bug fixes
|
498
|
-
- fix
|
499
|
-
|
500
|
-
### Deprecations
|
489
|
+
- fix unexpected method missing against `:to_hash` in Element
|
501
490
|
|
502
491
|
## [1.9.1] - 2018-08-20
|
503
492
|
### Enhancements
|
@@ -507,8 +496,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
507
496
|
### Bug fixes
|
508
497
|
- [internal] Fix raising error in `set_implicit_wait_by_default` [#130](https://github.com/appium/ruby_lib_core/issues/130)
|
509
498
|
|
510
|
-
### Deprecations
|
511
|
-
|
512
499
|
## [1.9.0] - 2018-08-05
|
513
500
|
### Enhancements
|
514
501
|
- Update documentation about `start_recording_screen`
|
@@ -516,8 +503,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
516
503
|
- Support `find_element/s :image, partial_image` [#119](https://github.com/appium/ruby_lib_core/pull/119)
|
517
504
|
- Requires `selenium-webdriver 3.14+` because of W3C actions [#115](https://github.com/appium/ruby_lib_core/pull/115)
|
518
505
|
|
519
|
-
### Bug fixes
|
520
|
-
|
521
506
|
### Deprecations
|
522
507
|
- [Internal] Deprecate experimental `ImageElement` in favor of `Element`
|
523
508
|
|
@@ -527,10 +512,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
527
512
|
- Use method missing to get attributes like `e.resource_id` instead of `e.attribute 'resource-id'` [#116](https://github.com/appium/ruby_lib_core/pull/116)
|
528
513
|
- Set `'~> 3.5', '< 3.14'`
|
529
514
|
|
530
|
-
### Bug fixes
|
531
|
-
|
532
|
-
### Deprecations
|
533
|
-
|
534
515
|
## [1.8.3] - 2018-07-20
|
535
516
|
### Enhancements
|
536
517
|
- Relax the logic of `:app` capability
|
@@ -538,11 +519,7 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
538
519
|
### Bug fixes
|
539
520
|
- Fix `within_context`
|
540
521
|
|
541
|
-
### Deprecations
|
542
|
-
|
543
522
|
## [1.8.2] - 2018-07-17
|
544
|
-
### Enhancements
|
545
|
-
|
546
523
|
### Bug fixes
|
547
524
|
- Available packages over HTTP [#106](https://github.com/appium/ruby_lib_core/issues/106)
|
548
525
|
|
@@ -550,23 +527,15 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
550
527
|
- Remove warning of camelCase capability for W3C format
|
551
528
|
|
552
529
|
## [1.8.1] - 2018-07-13
|
553
|
-
### Enhancements
|
554
|
-
|
555
530
|
### Bug fixes
|
556
531
|
- Fix including search context in `::Selenium::WebDriver::Elemenet`
|
557
532
|
- `include ::Appium::Core::Base::SearchContext` instead of `::Selenium::WebDriver::SearchContext`
|
558
533
|
|
559
|
-
### Deprecations
|
560
|
-
|
561
534
|
## [1.8.0] - 2018-07-07
|
562
535
|
### Enhancements
|
563
536
|
- Add Tizen case
|
564
537
|
- [Internal] reduce method definition by `add_endpoint_method`
|
565
538
|
|
566
|
-
### Bug fixes
|
567
|
-
|
568
|
-
### Deprecations
|
569
|
-
|
570
539
|
## [1.7.2] - 2018-06-23
|
571
540
|
### Enhancements
|
572
541
|
- Add `find_element_by_image` and `find_elements_by_image` to handle `ImageElement`
|
@@ -575,10 +544,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
575
544
|
- Experimental feature
|
576
545
|
- [Internal] Define screenshot methods in appium_lib_core instead of Selenium's one
|
577
546
|
|
578
|
-
### Bug fixes
|
579
|
-
|
580
|
-
### Deprecations
|
581
|
-
|
582
547
|
## [1.7.1] - 2018-06-15
|
583
548
|
### Enhancements
|
584
549
|
- Add a `format` argument for `device_time` [#94](https://github.com/appium/ruby_lib_core/pull/94)
|
@@ -586,8 +551,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
586
551
|
### Bug fixes
|
587
552
|
- Return empty array `[]` for find_elements
|
588
553
|
|
589
|
-
### Deprecations
|
590
|
-
|
591
554
|
## [1.7.0] - 2018-05-28
|
592
555
|
### Enhancements
|
593
556
|
- Has one **Breaking Change**
|
@@ -600,10 +563,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
600
563
|
- [Internal] Change directory and file structure
|
601
564
|
- [Internal] Set default content-type
|
602
565
|
|
603
|
-
### Bug fixes
|
604
|
-
|
605
|
-
### Deprecations
|
606
|
-
|
607
566
|
## [1.6.0] - 2018-05-08
|
608
567
|
### Enhancements
|
609
568
|
- **Breaking Change**
|
@@ -615,36 +574,22 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
615
574
|
- add `battery_info` to get battery information
|
616
575
|
- add `is_keyboard_shown` for iOS ( see also https://github.com/appium/appium-xcuitest-driver/pull/664/files )
|
617
576
|
|
618
|
-
### Bug fixes
|
619
|
-
|
620
|
-
### Deprecations
|
621
|
-
|
622
577
|
## [1.5.1] - 2018-04-25
|
623
|
-
### Enhancements
|
624
|
-
|
625
578
|
### Bug fixes
|
626
579
|
- Revert timeout logic in `1.4.1`
|
627
580
|
|
628
|
-
### Deprecations
|
629
|
-
|
630
581
|
## [1.5.0] - 2018-04-25
|
631
582
|
### Enhancements
|
632
583
|
- [internal] Remove hot fix for XCUITest action
|
633
584
|
|
634
|
-
### Bug fixes
|
635
|
-
|
636
585
|
### Deprecations
|
637
586
|
- Changed the name of arguments
|
638
587
|
- `swipe(start_x:, start_y:, end_x:, end_y:)` instead of `swipe(start_x:, start_y:, offset_x:, offset_y:)`
|
639
588
|
|
640
589
|
## [1.4.2] - 2018-04-22
|
641
|
-
### Enhancements
|
642
|
-
|
643
590
|
### Bug fixes
|
644
591
|
- Revert `delegate_from_appium_driver` for `ruby_lib` compatibility
|
645
592
|
|
646
|
-
### Deprecations
|
647
|
-
|
648
593
|
## [1.4.1] - 2018-04-22
|
649
594
|
### Enhancements
|
650
595
|
- add base image comparison
|
@@ -653,54 +598,30 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
653
598
|
- Raise `::Appium::Core::Wait::TimeoutError` instead of `::Selenium::WebDriver::Error::TimeOutError`
|
654
599
|
- [internal] Separate mjsonwp commands module and w3c commands module from one command module
|
655
600
|
|
656
|
-
### Bug fixes
|
657
|
-
|
658
|
-
### Deprecations
|
659
|
-
|
660
601
|
## [1.4.0] - 2018-04-15
|
661
602
|
### Enhancements
|
662
603
|
- Add a support for WebSocket client based on Faye::WebSocket::Client [#74](https://github.com/appium/ruby_lib_core/pull/74)
|
663
604
|
|
664
|
-
### Bug fixes
|
665
|
-
|
666
|
-
### Deprecations
|
667
|
-
|
668
605
|
## [1.3.8] - 2018-04-12
|
669
606
|
### Enhancements
|
670
607
|
- Make no-argument commands friendly for IDE
|
671
608
|
|
672
|
-
### Bug fixes
|
673
|
-
|
674
|
-
### Deprecations
|
675
|
-
|
676
609
|
## [1.3.7] - 2018-04-02
|
677
610
|
### Enhancements
|
678
611
|
- Only for `ruby_lib_core` internal process
|
679
612
|
- Remove `touch` action by default and following `selenium-webdriver` in W3C action.
|
680
613
|
- Since XCUITest and UA2 drivers force handling the pointer as `touch`.
|
681
614
|
|
682
|
-
### Bug fixes
|
683
|
-
|
684
|
-
### Deprecations
|
685
|
-
|
686
615
|
## [1.3.6] - 2018-04-01
|
687
616
|
### Enhancements
|
688
617
|
- Be able to change `kind` in W3C touch action.
|
689
618
|
- Read: https://github.com/appium/ruby_lib_core/blob/master/lib/appium_lib_core/common/base/bridge/w3c.rb#L29
|
690
619
|
|
691
|
-
### Bug fixes
|
692
|
-
|
693
|
-
### Deprecations
|
694
|
-
|
695
620
|
## [1.3.5] - 2018-03-30
|
696
621
|
### Enhancements
|
697
622
|
- Add a `bug_report` option in `start_recording_screen`, Android
|
698
623
|
- Add clipboard apis [#69](https://github.com/appium/ruby_lib_core/pull/69)
|
699
624
|
|
700
|
-
### Bug fixes
|
701
|
-
|
702
|
-
### Deprecations
|
703
|
-
|
704
625
|
## [1.3.4] - 2018-03-21
|
705
626
|
### Enhancements
|
706
627
|
- Add `save_viewport_screenshot` which get screenshot except for status bar.
|
@@ -710,16 +631,10 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
710
631
|
### Bug fixes
|
711
632
|
- Fix _create_session attempt to throw non-existent error type Appium::Core::Error::WebDriverError_ [#66](https://github.com/appium/ruby_lib_core/issues/66)
|
712
633
|
|
713
|
-
### Deprecations
|
714
|
-
|
715
634
|
## [1.3.3] - 2018-03-03
|
716
635
|
### Enhancements
|
717
636
|
- add `session_capabilities`: https://appium.io/docs/en/commands/session/get/
|
718
637
|
|
719
|
-
### Bug fixes
|
720
|
-
|
721
|
-
### Deprecations
|
722
|
-
|
723
638
|
## [1.3.2] - 2018-02-18
|
724
639
|
### Enhancements
|
725
640
|
- Add Android emulator commands
|
@@ -727,10 +642,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
727
642
|
- Add toggles
|
728
643
|
- `toggle_location_services`, `toggle_wifi`, `toggle_data`
|
729
644
|
|
730
|
-
### Bug fixes
|
731
|
-
|
732
|
-
### Deprecations
|
733
|
-
|
734
645
|
## [1.3.1] - 2018-02-14
|
735
646
|
### Enhancements
|
736
647
|
- add some app management commands [#58](https://github.com/appium/ruby_lib_core/pull/58)
|
@@ -752,10 +663,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
752
663
|
.perform
|
753
664
|
```
|
754
665
|
|
755
|
-
### Bug fixes
|
756
|
-
|
757
|
-
### Deprecations
|
758
|
-
|
759
666
|
## [1.3.0] - 2018-01-28
|
760
667
|
### Enhancements
|
761
668
|
- `start_recording_screen`/`stop_recording_screen` support iOS from `Appium 1.8.0` [#48](https://github.com/appium/ruby_lib_core/issues/48)
|
@@ -763,10 +670,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
763
670
|
- `start_recording_screen`
|
764
671
|
- The argument, `file_path`, was removed.
|
765
672
|
|
766
|
-
### Bug fixes
|
767
|
-
|
768
|
-
### Deprecations
|
769
|
-
|
770
673
|
## [1.2.7] - 2018-01-25
|
771
674
|
### Enhancements
|
772
675
|
- Print warning messages to use camelCase if capability key names are snake_case
|
@@ -775,8 +678,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
775
678
|
### Bug fixes
|
776
679
|
- Make `@driver.automation_name` downcase [#50](https://github.com/appium/ruby_lib_core/issues/50)
|
777
680
|
|
778
|
-
### Deprecations
|
779
|
-
|
780
681
|
## [1.2.6] - 2018-01-21
|
781
682
|
### Enhancements
|
782
683
|
- Add `window_rect`
|
@@ -784,17 +685,11 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
784
685
|
### Bug fixes
|
785
686
|
- Make `@driver.automation_name` symbol when someone define the `automationName` with the server argument. [#50](https://github.com/appium/ruby_lib_core/issues/50)
|
786
687
|
|
787
|
-
### Deprecations
|
788
|
-
|
789
688
|
## [1.2.5] - 2018-01-13
|
790
689
|
### Enhancements
|
791
690
|
- Enhance W3C support
|
792
691
|
- Timeout related methods
|
793
692
|
|
794
|
-
### Bug fixes
|
795
|
-
|
796
|
-
### Deprecations
|
797
|
-
|
798
693
|
## [1.2.4] - 2018-01-03
|
799
694
|
### Enhancements
|
800
695
|
- Refactor `create_session` in `Appium::Core::Base::Bridge`
|
@@ -806,34 +701,18 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
806
701
|
- Read `lib/appium_lib_core/common/base/w3c_bridge.rb` for more details
|
807
702
|
- Can get logs like `driver.logs.available_types` and `driver.logs.get`
|
808
703
|
|
809
|
-
### Bug fixes
|
810
|
-
|
811
|
-
### Deprecations
|
812
|
-
|
813
704
|
## [1.2.3] - 2017-12-27
|
814
|
-
### Enhancements
|
815
|
-
|
816
705
|
### Bug fixes
|
817
706
|
- Fix some w3c methods to work with Appium part 2 [#38](https://github.com/appium/ruby_lib_core/pull/38)
|
818
707
|
|
819
|
-
### Deprecations
|
820
|
-
|
821
708
|
## [1.2.2] - 2017-12-25
|
822
|
-
### Enhancements
|
823
|
-
|
824
709
|
### Bug fixes
|
825
710
|
- Fix some w3c methods to work with Appium [#37](https://github.com/appium/ruby_lib_core/pull/37)
|
826
711
|
|
827
|
-
### Deprecations
|
828
|
-
|
829
712
|
## [1.2.1] - 2017-12-23
|
830
713
|
### Enhancements
|
831
714
|
- override default duration to make some action fast [#36](https://github.com/appium/ruby_lib_core/pull/36)
|
832
715
|
|
833
|
-
### Bug fixes
|
834
|
-
|
835
|
-
### Deprecations
|
836
|
-
|
837
716
|
## [1.2.0] - 2017-12-23
|
838
717
|
### Enhancements
|
839
718
|
- Append `appium:` prefix for capabilities automatically due to W3C format.
|
@@ -842,10 +721,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
842
721
|
- IME related
|
843
722
|
- Touch actions based on W3C spec
|
844
723
|
|
845
|
-
### Bug fixes
|
846
|
-
|
847
|
-
### Deprecations
|
848
|
-
|
849
724
|
## [1.1.0] - 2017-12-16
|
850
725
|
### Enhancements
|
851
726
|
- Add guidelines in `.github`
|
@@ -854,8 +729,6 @@ This release has a breaking change for creating core. Thus, I've bumped the majo
|
|
854
729
|
### Bug fixes
|
855
730
|
- fix creating sessions [#31](https://github.com/appium/ruby_lib_core/pull/31) for W3C creating sessions
|
856
731
|
|
857
|
-
### Deprecations
|
858
|
-
|
859
732
|
## [1.0.0] - 2017-11-12
|
860
733
|
|
861
734
|
Initial release
|