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