update_engine: migrate absl::optional to std::optional

libchrome base::Optional is replaced by absl::optional on chromium
upstream and removed in r885735.
Since Chrome OS uses c++17, it can also use std::optional (as opposed to
Chrome which uses c++14). See go/use-std-optional-in-cros for
discussion.

Note, libchrome uses absl::optional because that is what upstream
chromium uses. However, in CrOS, absl switched to always use
std::optional implementation in crrev.com/c/2967691 so they are
equivalent.

LSC proposal: go/chromeos-lsc-optional-migration

BUG=b:190446478
TEST=FEATURES=test emerge-hatch update_engine

Change-Id: I82209d29d7b26b8df0e4e9edc60c01656f9935c8
Reviewed-on: https://chromium-review.googlesource.com/c/aosp/platform/system/update_engine/+/3580284
Tested-by: Grace Cham <[email protected]>
Reviewed-by: Jae Hoon Kim <[email protected]>
Commit-Queue: Grace Cham <[email protected]>
diff --git a/common/cros_healthd_interface.h b/common/cros_healthd_interface.h
index 1ef892d..bfb9c5e 100644
--- a/common/cros_healthd_interface.h
+++ b/common/cros_healthd_interface.h
@@ -21,7 +21,6 @@
 #include <unordered_set>
 
 #include <base/callback.h>
-#include <base/optional.h>
 
 #include "update_engine/common/telemetry_info.h"
 
diff --git a/common/cros_healthd_test.cc b/common/cros_healthd_test.cc
index d20631e..2f73e23 100644
--- a/common/cros_healthd_test.cc
+++ b/common/cros_healthd_test.cc
@@ -16,6 +16,7 @@
 
 #include "update_engine/common/cros_healthd.h"
 
+#include <optional>
 #include <string>
 #include <utility>
 #include <vector>
@@ -293,7 +294,7 @@
   uint16_t vendor_id = 4;
   uint16_t device_id = 5;
   // Don't use driver after std::move.
-  absl::optional<std::string> driver = "some-driver";
+  std::optional<std::string> driver = "some-driver";
   bus_info_ptr->set_pci_bus_info(
       chromeos::cros_healthd::mojom::PciBusInfo::New(class_id,
                                                      subclass_id,
@@ -455,7 +456,7 @@
     auto& bus_info_ptr = bus_device_ptr->bus_info;
     bus_info_ptr = chromeos::cros_healthd::mojom::BusInfo::New();
     // Don't use driver after std::move.
-    absl::optional<std::string> driver = "some-driver";
+    std::optional<std::string> driver = "some-driver";
     bus_info_ptr->set_pci_bus_info(
         chromeos::cros_healthd::mojom::PciBusInfo::New(class_id,
                                                        subclass_id,
diff --git a/cros/omaha_request_action.cc b/cros/omaha_request_action.cc
index c9db616..f7e64ba 100644
--- a/cros/omaha_request_action.cc
+++ b/cros/omaha_request_action.cc
@@ -19,6 +19,7 @@
 #include <inttypes.h>
 
 #include <limits>
+#include <optional>
 #include <sstream>
 #include <string>
 #include <utility>