chore: Refactor vcpkg.json and update CMake configurations

- Removed the abseil dependency from vcpkg.json for Windows platform.
- Updated CMake configuration to prevent finding system-installed protobuf and abseil, ensuring gRPC uses bundled versions.
- Modified todo_manager.cc to convert paths to strings for consistency.
- Updated vision_action_refiner.cc to explicitly convert stripped whitespace strings to std::string.
- Added undefinitions for Windows macros in z3ed_network_client.cc to avoid conflicts with method names.
This commit is contained in:
scawful
2025-10-09 12:44:07 -04:00
parent 2d9a2d11f4
commit 83ad27e6a0
5 changed files with 17 additions and 13 deletions

View File

@@ -18,11 +18,11 @@ set(CMAKE_POLICY_VERSION_MINIMUM 3.5)
set(FETCHCONTENT_QUIET OFF) set(FETCHCONTENT_QUIET OFF)
# CRITICAL: Prevent CMake from finding system-installed protobuf # CRITICAL: Prevent CMake from finding system-installed protobuf/abseil
# This ensures gRPC uses its own bundled versions # This ensures gRPC uses its own bundled versions
# NOTE: We allow gRPC to use our FetchContent abseil to keep versions in sync
set(CMAKE_DISABLE_FIND_PACKAGE_Protobuf TRUE) set(CMAKE_DISABLE_FIND_PACKAGE_Protobuf TRUE)
set(CMAKE_DISABLE_FIND_PACKAGE_gRPC TRUE) set(CMAKE_DISABLE_FIND_PACKAGE_gRPC TRUE)
set(CMAKE_DISABLE_FIND_PACKAGE_absl TRUE)
# Also prevent pkg-config from finding system packages # Also prevent pkg-config from finding system packages
set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH FALSE) set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH FALSE)

View File

@@ -53,9 +53,9 @@ TodoItem::Status TodoItem::StringToStatus(const std::string& str) {
TodoManager::TodoManager() { TodoManager::TodoManager() {
auto result = util::PlatformPaths::GetAppDataSubdirectory("agent"); auto result = util::PlatformPaths::GetAppDataSubdirectory("agent");
if (result.ok()) { if (result.ok()) {
data_dir_ = *result; data_dir_ = result->string();
} else { } else {
data_dir_ = std::filesystem::current_path() / ".yaze" / "agent"; data_dir_ = (std::filesystem::current_path() / ".yaze" / "agent").string();
} }
todos_file_ = (std::filesystem::path(data_dir_) / "todos.json").string(); todos_file_ = (std::filesystem::path(data_dir_) / "todos.json").string();
} }

View File

@@ -110,9 +110,9 @@ absl::StatusOr<ActionRefinement> VisionActionRefiner::RefineAction(
std::vector<std::string> parts = absl::StrSplit(coords, ','); std::vector<std::string> parts = absl::StrSplit(coords, ',');
if (parts.size() == 2) { if (parts.size() == 2) {
refinement.adjusted_parameters["x"] = refinement.adjusted_parameters["x"] =
absl::StripAsciiWhitespace(parts[0]); std::string(absl::StripAsciiWhitespace(parts[0]));
refinement.adjusted_parameters["y"] = refinement.adjusted_parameters["y"] =
absl::StripAsciiWhitespace(parts[1]); std::string(absl::StripAsciiWhitespace(parts[1]));
} }
} }
} }
@@ -167,8 +167,8 @@ VisionActionRefiner::LocateUIElement(
std::string coords = text.substr(pos + 1, end - pos - 1); std::string coords = text.substr(pos + 1, end - pos - 1);
std::vector<std::string> parts = absl::StrSplit(coords, ','); std::vector<std::string> parts = absl::StrSplit(coords, ',');
if (parts.size() == 2) { if (parts.size() == 2) {
location["x"] = absl::StripAsciiWhitespace(parts[0]); location["x"] = std::string(absl::StripAsciiWhitespace(parts[0]));
location["y"] = absl::StripAsciiWhitespace(parts[1]); location["y"] = std::string(absl::StripAsciiWhitespace(parts[1]));
} }
} }
} }
@@ -324,7 +324,7 @@ VisionAnalysisResult VisionActionRefiner::ParseVerificationResponse(
size_t pos = response_upper.find("SUCCESS:"); size_t pos = response_upper.find("SUCCESS:");
if (pos != std::string::npos) { if (pos != std::string::npos) {
std::string desc = response.substr(pos + 8); std::string desc = response.substr(pos + 8);
result.description = absl::StripAsciiWhitespace(desc); result.description = std::string(absl::StripAsciiWhitespace(desc));
} }
} }
else if (response_upper.find("FAILURE") != std::string::npos) { else if (response_upper.find("FAILURE") != std::string::npos) {

View File

@@ -16,6 +16,14 @@
#include "httplib.h" #include "httplib.h"
#endif #endif
// Undefine Windows macros that conflict with our method names
// Must be outside the #ifdef so it applies to all code below
#ifdef _WIN32
#ifdef SendMessage
#undef SendMessage
#endif
#endif
namespace yaze { namespace yaze {
namespace cli { namespace cli {
namespace net { namespace net {

View File

@@ -11,10 +11,6 @@
"default-features": false, "default-features": false,
"features": [] "features": []
}, },
{
"name": "abseil",
"platform": "windows"
},
{ {
"name": "yaml-cpp", "name": "yaml-cpp",
"platform": "windows" "platform": "windows"