В редакции 2024 член воркспейса может переопределять признаки по умолчанию
07.08.2026Реализовано предложение: начиная с редакции 2024 член воркспейса может переопределить признаки по умолчанию у зависимости, объявленной на уровне всего воркспейса.
В чём была проблема
Признаки по умолчанию — это необязательные возможности, включаемые без явного указания. Обычно их объявляют один раз в общем месте, чтобы не расходились по пакетам. Но иногда конкретному пакету нужны дополнительные возможности, и раньше это выражалось либо отказом от общей настройки, либо включением по умолчанию для всех.
Что появилось
Член воркспейса может указать, что для этой зависимости он хочет дополнительные возможности поверх общих. Ничего не дублируется, и остальные члены видят прежние настройки.
Почему только с редакции 2024
Это изменение поведения: ранее записанное переопределение молча игнорировалось. Такое молчание опаснее ошибки — человек пишет настройку, видит, что она не сработала, и не знает почему.
Поэтому изменение включили только для новой редакции, где поведение определено. В старых редакциях оно осталось прежним, чтобы не ломать сборки.
Практическая польза
Мелкие библиотечные крейты часто пишут так, что дополнительные возможности по умолчанию мешают: компилятор проверяет лишнее, а библиотека всё равно работает. Теперь их можно выключить для себя, не трогая настройки всего воркспейса.
Оригинал
feat(toml): allow overriding inherited default-features in 2024; RFC 3945
Упоминаний: 1 · Просмотров: 2