appium-webdriveragent 16.8.0 → 16.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [16.9.0](https://github.com/appium/WebDriverAgent/compare/v16.8.0...v16.9.0) (2026-08-27)
2
+
3
+ ### Features
4
+
5
+ * cache the system application resolution for WDA's process lifetime ([#1232](https://github.com/appium/WebDriverAgent/issues/1232)) ([21c98f2](https://github.com/appium/WebDriverAgent/commit/21c98f253561ee3dfc93edfb1c4de6afc3200b50))
6
+
1
7
  ## [16.8.0](https://github.com/appium/WebDriverAgent/compare/v16.7.3...v16.8.0) (2026-08-24)
2
8
 
3
9
  ### Features
@@ -15,11 +15,11 @@
15
15
  <key>CFBundlePackageType</key>
16
16
  <string>FMWK</string>
17
17
  <key>CFBundleShortVersionString</key>
18
- <string>16.8.0</string>
18
+ <string>16.9.0</string>
19
19
  <key>CFBundleSignature</key>
20
20
  <string>????</string>
21
21
  <key>CFBundleVersion</key>
22
- <string>16.8.0</string>
22
+ <string>16.9.0</string>
23
23
  <key>NSPrincipalClass</key>
24
24
  <string/>
25
25
  </dict>
@@ -269,6 +269,9 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
269
269
  [response respondWithString:@"<!DOCTYPE html><html><title>Health Check</title><body><p>I-AM-ALIVE</p></body></html>"];
270
270
  }];
271
271
 
272
+ // Deprecated: no longer needed since appium-xcuitest-driver handles calibration
273
+ // itself (https://github.com/appium/appium-xcuitest-driver/pull/2948). Kept for
274
+ // backward compatibility; will be removed in a future major release.
272
275
  NSString *calibrationPage = @"<html>"
273
276
  "<title>{\"x\":null,\"y\":null}</title>"
274
277
  "<header>"
@@ -276,6 +279,7 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
276
279
  "</header>"
277
280
  "</html>";
278
281
  [self.server get:@"/calibrate" withBlock:^(RouteRequest *request, RouteResponse *response) {
282
+ [FBLogger logFmt:@"The /calibrate endpoint is deprecated and will be removed in a future release"];
279
283
  [response respondWithString:calibrationPage];
280
284
  }];
281
285
 
@@ -20,6 +20,7 @@ static id FBAXClient = nil;
20
20
  @interface FBXCAXClientProxy ()
21
21
 
22
22
  @property (nonatomic) NSMutableDictionary<NSNumber *, XCUIApplication *> *appsCache;
23
+ @property (nonatomic, nullable) id<FBXCAccessibilityElement> cachedSystemApplication;
23
24
 
24
25
  @end
25
26
 
@@ -67,7 +68,14 @@ static id FBAXClient = nil;
67
68
 
68
69
  - (id<FBXCAccessibilityElement>)systemApplication
69
70
  {
70
- return [FBAXClient systemApplication];
71
+ @synchronized (self) {
72
+ if (nil == self.cachedSystemApplication) {
73
+ // The system application's identity cannot change without it being killed,
74
+ // which takes WDA down with it, so it is safe to cache it forever.
75
+ self.cachedSystemApplication = [FBAXClient systemApplication];
76
+ }
77
+ return self.cachedSystemApplication;
78
+ }
71
79
  }
72
80
 
73
81
  - (NSDictionary *)defaultParameters
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium-webdriveragent",
3
- "version": "16.8.0",
3
+ "version": "16.9.0",
4
4
  "description": "Package bundling WebDriverAgent",
5
5
  "keywords": [
6
6
  "Appium",