osrm-backend
osrm-backend copied to clipboard
Replace boost::optional with std::optional
Issue
This PR target at (partially) resolving #6551. That is exchanging boost::optional for std::optional from C++17. As mentioned elsewhere (https://github.com/Project-OSRM/osrm-backend/pull/6429#issuecomment-1296207761) boost::spirit::qi does not work with std::optional, however boost::spirit::x3 does. This PR does NOT refactor these parts of the codebase. To my knowledge there are three parsers written with ::qi (and ::phoenix) and at least the time validator and CSV parser I was abled to at least work on. (not included in this PR) However the core API of /server alses uses ::qi and changing this would be a more peculiar if not a bad decision (for now). Note because of failing CI this is #6593 reopened.
Tasklist
- [ x] CHANGELOG.md entry
- [ x] review
- [ x] adjust for comments
- [ x] cherry pick to release branch