Skip to content

Tracking Issue: no_std for bevy_asset #18978

Open
@bushrat011899

Description

@bushrat011899

Motivation

bevy_asset is a key crate within Bevy that makes heavy usage of std, making it challenging to add no_std support to. This is a tracking issue to document what I anticipate will be a lengthy process.

End Goal

  • To support some subset of bevy_asset on no_std targets, such as wasm32v1-none

Tasks

Below are some particular tasks which will need to be accomplished prior to no_std support. They are in no particular order.

  • Remove or make optional parking_lot
  • Add no_std support to ron
  • Handle the following incompatible dependencies:
    • async-broadcast
    • async-fs
    • crossbeam-channel
    • futures-io
  • Make AssetPath independent of std::path::Path (Cart has previously expressed that AssetPath should always be valid UTF-8 and only use / as its path separator, implying str is a suitable backend)
  • Make bevy_asset independent of std::io::Error.
  • Feature-gate built-in filesystem IO support (std::fs)

Metadata

Metadata

Assignees

Labels

A-AssetsLoad files from disk to use for things like images, models, and soundsC-FeatureA new feature, making something new possibleD-ComplexQuite challenging from either a design or technical perspective. Ask for help!O-EmbeddedWeird hardware and no_std platformsS-Needs-DesignThis issue requires design work to think about how it would best be accomplished

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions