mangrove
mangrove copied to clipboard
Build error
during last step of "Build and install Mangrove". -> make && make install Get this error: In file included from /Users/xxx/src/repos/mangrove/src/mangrove/test/collection_wrapper.cpp:26: /Users/xxx/src/repos/mangrove/src/mangrove/collection_wrapper.hpp:267:22: error: no matching member function for call to 'replace_one' return _coll.replace_one(filter, boson::to_document(replacement), options); ~~~~~~^~~~~~~~~~~ /Users/xxx/src/repos/mangrove/src/mangrove/test/collection_wrapper.cpp:218:29: note: in instantiation of member function 'mangrove::collection_wrapper<Foo>::replace_one' requested here auto res = foo_coll.replace_one(doc_view, obj2); ^ /usr/local/include/mongocxx/v_noabi/mongocxx/collection.hpp:1407:41: note: candidate function not viable: no known conversion from 'const mongocxx::options::update' to 'const options::replace' for 3rd argument stdx::optionalresult::replace_one replace_one( ^ /usr/local/include/mongocxx/v_noabi/mongocxx/collection.hpp:1434:41: note: candidate function not viable: no known conversion from 'bsoncxx::document::view_or_value' (aka 'view_or_value<document::view, document::value>') to 'const mongocxx::client_session' for 1st argument stdx::optionalresult::replace_one replace_one( ^ 10 warnings and 1 error generated. make[2]: *** [src/mangrove/test/CMakeFiles/test_mangrove.dir/collection_wrapper.cpp.o] Error 1 make[1]: *** [src/mangrove/test/CMakeFiles/test_mangrove.dir/all] Error 2 make: *** [all] Error 2
Essentially, the call on the bsoncxx side expects the 2nd parameter to be of type bsoncxx::document::view_or_value but instead the parameter is of type bsoncxx::document::value.
There are many other build issues that I've worked around, so I would say that this code base isn't very stable against the latest mongocxx drivers. Is Mangrove out of date with mongocxx and will there be updates to Mangrove to fix this?