Diffusion KMail 5171464e8877

unifiedmailboxagent: Stop using std::optional.

Authored by rakuco on Jan 2 2019, 12:34 PM.

Description

unifiedmailboxagent: Stop using std::optional.

Summary:
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.

Reviewers: dvratil, FreeBSD

Reviewed By: dvratil

Subscribers: kde-pim

Tags: KDE PIM

Differential Revision: https://phabricator.kde.org/D17917

Details

Committed
rakucoJan 4 2019, 4:46 PM
Reviewer
dvratil
Differential Revision
D17917: unifiedmailboxagent: Stop using std::optional.
Parents
R206:737ad3bb5dca: SVN_SILENT made messages (.desktop file) - always resolve ours
Branches
Unknown
Tags
Unknown