MrGVSV/bevy_proto

bevy_proto_backend is pulling in every bevy feature

deifactor opened this issue · 4 comments

I added

[dependencies.bevy_proto]
version = "0.9.0"
default-features = false
features = []

to my Cargo.toml and noticed it added a bunch of Bevy features I wasn't using (audio, gltf, etc). I think the root cause is that bevy_proto_backend has all the optional stuff in its default features, and bevy_proto doesn't disable default features.

Since it's a backend crate, maybe it makes sense to just not have any default features?

MrGVSV commented

Great catch! I think this could actually be solved by just disabling default features for bevy_proto_backend within the Cargo.toml for bevy_proto.

Would you like to make a PR? If not, I can certainly do this.

Both work, I just figured that it'd be easier to change bevy_proto_backend since it seems weird to have a bunch of default features and then have the main crate disable them.

You can make the PR if you want, doesn't matter :)

MrGVSV commented

Both work, I just figured that it'd be easier to change bevy_proto_backend since it seems weird to have a bunch of default features and then have the main crate disable them.

The reason for this is because bevy_proto_backend is meant to be used to build custom prototype implementations. bevy_proto just happens to be the "default" implementation.

Aha. If it's not just an implementation detail then yeah that makes sense.