Remove boost dependency
Closed this issue · 1 comments
Boost is sparingly used in the project. There are some unused header includes and some mutexes (one unused) and a scoped lock. And a few uses of the noncopyable class.
In turn, Boost takes ages to build.
The mutex functionality is in C++11, scoped locks are there in C++17. Noncopyable can be replaced by deleted copy constructor and assignment operator.
I propose to remove the boost dependency or make it a 'fall-back' implementation if C++17 support is not available. I made a branch without it:
PR #12 has been created and merged.
Closing this.
Side note:
Boost may still be built on Windows as part of bsoncpp (needed by mongocpp). On Linux it is not used, unless the BSONCXX_POLY_USE_BOOST option is switched on manually. (By default it is off.) However, Boost is not used by the mongodb plugin directly any more.