appium_lib_core 4.1.0 → 5.0.0.rc6

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