Reflect trait should not require Send + Sync bounds
Open
A-Reflection
C-Bug
D-Straightforward
S-Ready-For-Implementation
X-Uncontroversial
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 161
Description
## Bevy version
0.15
## Problem
`Reflect` has no intrinsic need to be Send + Sync. This limits its uses, especially in a broader non-Bevy context.
## Solution
Remove `Send` + `Sync` trait bounds, adding them locally to any methods that fail to compile.
## Context
According to @MrGVSV, this was originally for compatibility with components, before the explicit `Component` trait was added. This is backed up by [Cart here](https://discord.com/channels/691052431525675048/1002362493634629796/1090372821399646349)
Contributor guide
Assessment
This issue has not been assessed yet.