cargo-shear: инструмент CLI для обрезки неиспользуемых зависимостей Rust
cargo-shear от Boshen нацеливается на избыток зависимостей в проектах Rust, сканируя код и манифесты для выявления записей crate, которые не используются в компиляции. Инструмент работает по всем рабочим пространствам и может автоматически удалять неиспользуемые записи после одобрения, при этом подчеркивая быструю работу и нулевую конфигурацию командной строки, которая интегрируется с инструментом Cargo. Он предназначен для инженеров Rust, поддерживающих проекты с открытым исходным кодом, и команд DevOps, которым нужны более компактные манифесты и более короткие циклы сборки.
Инструмент анализирует исходный код проекта и сравнивает декларации с фактическим использованием, что сосредотачивает предложения по удалению на записях, не упоминаемых в коде. Обнаружение автоматизировано и предназначено для устранения избыточности манифеста, а не поведения во время выполнения. Рецензенты отмечают, что рабочий процесс предлагает кандидатов на удаление, а не заставляет вносить изменения без проверки, что помогает избежать случайного удаления условно используемых библиотек.
Каково влияние на систему во время сканирования и CI-процессов?
Сканирование завершается быстро благодаря производительности Rust и реализации, которая подчеркивает скорость выполнения, что делает инструмент практичным для локальных проверок и конвейеров непрерывной интеграции. Инструмент кроссплатформенный и требует инструментальной цепочки Rust и Cargo для работы; поддерживаемые платформы включают:
Windows
macOS
Linux
Его низконастраиваемый дизайн снижает трение при настройке автоматизации сборки.
Безопасно ли применять автоматические изменения манифеста в проектах?
Инструмент может изменять Cargo.toml, когда включена опция автоматического исправления, поэтому важны практики безопасности. Рекомендуемый рабочий процесс — сначала выполнить сухое сканирование и просмотреть предложенные удаления, прежде чем разрешить автоматические редактирования, предостережение, явно отмеченное разработчиком, чтобы предотвратить непреднамеренные изменения манифеста в производственных кодовых базах.
Кто может запустить его без крутой кривой обучения?
Интерфейс командной строки и подход без конфигурации подходят разработчикам, комфортно работающим с терминальными инструментами и рабочими процессами Cargo. Сопровождающие крупных рабочих пространств получают выгоду от пакетного анализа, в то время как инженеры DevOps могут включать сканирования в конвейеры. Инструмент подходит пользователям, которые принимают работу через CLI в качестве основного интерфейса, а не графической альтернативы.
Практичный выбор для команд Rust, ориентированных на CLI, с рабочим процессом, основанным на обзорах
Этот инструмент является прагматичным вариантом для инженеров и поддерживающих Rust, которые хотят быстро уменьшить объем манифеста, сохраняя контроль над изменениями, так как он интегрируется с инструментальной цепочкой Cargo и работает на современных настольных платформах. Одним из компромиссов является то, что он предполагает рабочий процесс командной строки и локальную инструментальную цепочку Rust, поэтому командам, которые предпочитают графические инструменты или не имеют стандартной настройки CI, может потребоваться дополнительная настройка. Рекомендуется.
Pros
Быстрое выполнение с использованием производительности нативного Rust
Обрабатывает рабочие пространства Rust для многопакетного анализа
Предоставляет автоматический режим исправления для обновления Cargo.toml
Cons
Требуется установленный инструментальный комплект Rust и Cargo
Интерфейс только командной строки может отпугнуть пользователей, ориентированных на графический интерфейс.
Автоматические исправления должны быть проверены перед применением
Законы, касающиеся использования этого программного обеспечения, варьируются от страны к стране. Мы не поощряем и не одобряем использование этой программы, если она нарушает эти законы. Softonic может получить реферальное вознаграждение, если вы перейдете по ссылке или купите и продукты, представленные здесь.