unifiedmailboxagent: Stop using std::optional.

Authored by rakuco on Jan 2 2019, 2:04 PM.



This reverts most of commits 39cbfe725870a9 ("I can haz
std::experimental::optional!") and b44642b4ec ("Rename "exp" namespace to
"stdx" to avoid conflict with exp()"), as well as other commits fixing the
build. Follow-up coding style adjustments (done mostly in commit c8e59b1a3
"GIT_SILENT: coding style") have not been reverted though.

std::optional support is only officially supported in C++17 or later, but we
were still requiring only C++14 to build unifiedmailboxagent. Switching to
C++17 in the Applications/18.12 branch requires a change to akonadi that is
only available in its master branch (ceeb4f3a, "Disable std::auto_ptr checks
in Item in C++17"), and in any case C++17 support is fairly recent
everywhere so we can just wait a bit longer before depending on it.

The discussion in https://phabricator.kde.org/D17606 is also relevant.

Test Plan

Built all code and unit tests, the same tests fail with and without this patch.

Diff Detail

R206 KMail
revert-std-optional (branched from Applications/18.12)
No Linters Available
No Unit Test Coverage
Build Status
Buildable 6560
Build 6578: arc lint + arc unit
rakuco created this revision.Jan 2 2019, 2:04 PM
Restricted Application added a project: KDE PIM. · View Herald TranscriptJan 2 2019, 2:04 PM
Restricted Application added a subscriber: kde-pim. · View Herald Transcript
rakuco requested review of this revision.Jan 2 2019, 2:04 PM
rakuco removed a subscriber: FreeBSD.
dvratil accepted this revision.Jan 4 2019, 1:31 PM

Looks good. Commit it to Applications/18.12 branch, please. Thanks!

This revision is now accepted and ready to land.Jan 4 2019, 1:31 PM
rakuco closed this revision.Jan 4 2019, 4:46 PM