Remove the any contrib library#1060
Conversation
📝 WalkthroughWalkthroughThe pull request removes a custom C++11-compatible any implementation (linb::any) from the contrib directory and migrates the BT::Any class to use the standard library's std::any, eliminating custom type-erasure machinery and external dependencies. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Fair enough, would you be open to a PR to remove the use of aligned_storage in that case ? |

Summary
This change completely removes the
anycontrib library and replaces its use withstd::anyavailable in C++17.Motivation
This change has several benefits:
std::aligned_storagewhen compiling a project using the library in C++23 or more.Impact on API
This change removes a header and replaces uses of
linb::anywithstd::anyinsafe_any.hpp. In theory, ifcontrib/any.hppis considered an implementation details ofBT::Anythen this should not be considered an API break as the interface of the class does not change.Summary by CodeRabbit
Release Notes
✏️ Tip: You can customize this high-level summary in your review settings.