chore: Remove self-update from default crate features (#1139)

The self-updater feature is problematic for distro package builders
where the executable does not have permission and should not be trying
to monkey with the system installed binaries. Distros have their own
update mechanisms that shouldn't be tampered with by every app that
comes along. This means distro have to build with --no-default-features
for apps that include self-updaters by default, but that also means we
have to maintain a list of features we do want. This is not only tedious
it is error-prone because there is a very good chance of new features
getting overlooked when doing version bumps.

Setting up a feature group like this makes it much easier for distros to
build without the unwanted features without getting out of sync with
upstream enhancements over time.

Co-authored-by: simonsan <14062932+simonsan@users.noreply.github.com>
This commit is contained in:
Caleb Maclennan 2024-09-10 15:14:14 +03:00 committed by GitHub
parent 152c256bcf
commit ab13071e07
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -18,7 +18,7 @@ rustic - fast, encrypted, deduplicated backups powered by Rust
"""
[features]
default = ["self-update", "tui", "webdav"]
default = ["tui", "webdav"]
mimalloc = ["dep:mimalloc"]
jemallocator = ["dep:jemallocator-global"]
self-update = ["dep:self_update", "dep:semver"]