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