Hi guys!
I'm a new plugin-dev.
That would be advisable to have it by few solid resons:
1) std::string_view (https://en.cppreference.com/w/cpp/string/basic_string_view) - for work with cstrings/std::string without (re)allocations
2) __has_include (https://en.cppreference.com/w/cpp/preprocessor/include):
#ifdef __has_include
#if __has_include(<SomePlugin.h>)
#include <SomePlugin.h> // we have certain header file
#endif
#endif
3) Filesystem library (https://en.cppreference.com/w/cpp/filesystem)
4) std::optional (https://en.cppreference.com/w/cpp/utility/optional), std::variant (https://en.cppreference.com/w/cpp/utility/variant), std::any (https://en.cppreference.com/w/cpp/utility/any)
5) std::integer_sequence (https://en.cppreference.com/w/cpp/utility/integer_sequence) - for template programming...
And MAIN reason is: to be closer to users - devs will able to include modern code base in plugins directly into the C::B avoiding external plugin-dev-flow (we know that not all users can build fresh version from SVN, not to mention to find a cool plugin anywhere and compile it for turn it on in the IDE - all that scares away beginners).
The Best regards.