WPPilot 1.2.1
A patch for extension search. The two WordPress.org directory endpoints answer with different types for the same fields, and 1.2.0 read both as if they were identical.
Found by running the abilities against a real WordPress 6.9.4 install, four minutes after 1.2.0 was tagged.
Fixed
- Theme authors read as "Array".
themes_api()returnsauthoras a profile record whereplugins_api()returns an HTML link, so the string cast raisedArray to string conversionon every theme search and handed the agent the literal wordArray. requiresisfalse, not a string, when an extension declares no minimum WordPress version. A bool cast turned that into"1"or""; it now reads as no requirement.- Theme install counts were always zero. Theme records report
downloadedwhere plugin records reportactive_installs. Both keys are read now.
wordpress_directory_text() and wordpress_directory_author() absorb the type disagreement. Seven unit tests cover it; the suite is 395 tests, 613 assertions, green.
The existing doubles could not have caught this. They never called the real plugins_api() / themes_api(), and a hand-written fixture would have encoded the same wrong assumption about the payload shape.
Unchanged
No new abilities: the free count stays 103. No safety classification moves, and existing connections keep working without re-authorisation.
Downloads
Install wppilot-1.2.1.zip. The GitHub "Source code" archive is not installable: it lacks vendor/ and unpacks to the wrong folder name.