использовать cfg!(feature = "coolstuff") чтобы включать/выключать определённые куски в зависимости от features.
Всё работает как ожидается для одиночного проекта (я просто добавляю в Cargo.toml секцию [features] и в ней прописываю coolstuff = [], затем собираю/запускаю проект через cargo run --features coolstuff или же через cargo run --all-features). При этом карга явно проверяет имена фич, и не даёт мне активировать несуществующую фичу, типа cargo run --features weird будет ругаться, что нет такой фичи weird.
Всё вроде бы хорошо. Но теперь если этот же самый проект поместить внутрь workspace, то всё летит к чертям: карга теперь молча принимает любое имя фичи, больше не ругается на несуществующие, но при этом ничего по факту не делает - запрошенная фича не активизируется, и проверка на cfg!(feature = "coolstuff") не проходит. Но. Если запустить cargo run --all-features, то опять же всё работает как надо. Что я делаю не так, и как мне заставить работать --features coolstuff потому что я не хочу активизировать все фичи, мне как раз надо по одной (а их в проекте больше одной)? Плиз хелп.
попробуй явно указать --bin
вероятно нужно заэкспортить фичи
Обсуждают сегодня