Проверка неиспользуемых зависимостей перестала ругаться на стандартную библиотеку

06.03.2026

Проверка неиспользуемых зависимостей больше не сообщает о крейтах стандартной библиотеки, которые передаются автоматически. Раньше это давало ложные предупреждения в каждом проекте, собирающем стандартную библиотеку вручную.

Почему это происходило

При сборке со своей крейтов стандартной библиотекой сборщик передаёт компилятору её состав как внешние зависимости — иначе не собрать. Они передаются всегда, независимо от того, объявлены они в манифесте.

Проверка сравнивала переданные зависимости с манифестом и сообщала о недостающих. То есть на каждый крейт без стандартной библиотеки приходилось по несколько предупреждений о зависимостях, которых в проекте нет и которые добавлять не нужно.

Как узнать, что зависимость действительно нужна

После исправления остаются только те настоящие зависимости, которые объявлены в манифесте, но не используются. Их предупреждение осмысленно.

Оригинал

Cargo explicitly passes standard library crates (core, alloc, etc.) as extern dependencies when using -Zbuild-std, which causes 'erroneous' warnings because these crates are not listed in the user's Cargo.toml.

Упоминаний: 1 · Просмотров: 2