Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is this?
This is a rewrite of #18, which itself was a rewrite of the entire crate.
Why?
There are a number of reasons this was done:
typetag
dependency (which came with some drawbacks along with its advantages)What changed?
This being a complete rewrite, pretty much everything changed.
Prototype
is pretty similar, butProtoComponent
received a complete overhaul (it's been replaced with the better-namedSchematic
trait as suggested by @B-Reif a long time ago).I won't go into too many details here like in the last PR since most of the content is covered in the new examples. However, I will go over some of the highlights:
typetag
has been replaced withbevy_reflect
"I liked using
typetag
!"Not to worry! For those who prefer to use the old
typetag
system, then feel free to continue using it! I've relocated that code to its own crate calledbevy_proto_typetag
.For users who want to continue supporting the typetag version, I will still accept PRs and probably bump Bevy versions here and there. However, my focus will be on this crate.