bevyengine / bevyengine/bevy

Reflect trait should not require Send + Sync bounds

Open
#16,713 2 comments 0 reactions 1 assignee Claimed by @BenjaminBrienen View on GitHub
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.