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