Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: MrGVSV/bevy_proto
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.5.0
Choose a base ref
...
head repository: MrGVSV/bevy_proto
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref

Commits on Aug 9, 2022

  1. Copy the full SHA
    6305ce6 View commit details
  2. Copy the full SHA
    b290cd3 View commit details

Commits on Oct 12, 2022

  1. Copy the full SHA
    1edbd5f View commit details

Commits on Nov 12, 2022

  1. Update to Bevy 0.9

    CatThingy committed Nov 12, 2022
    Copy the full SHA
    922b074 View commit details

Commits on Nov 13, 2022

  1. Copy the full SHA
    230e280 View commit details
  2. Merge pull request #24 from CatThingy/bevy_0.9

    Update to Bevy 0.9
    MrGVSV authored Nov 13, 2022
    Copy the full SHA
    59805ae View commit details
  3. Bump version 0.5.0 -> 0.6.0

    MrGVSV committed Nov 13, 2022
    Copy the full SHA
    1fe3d6e View commit details

Commits on Mar 6, 2023

  1. Update to Bevy 0.10

    CatThingy committed Mar 6, 2023
    Copy the full SHA
    8acf752 View commit details
  2. Merge pull request #27 from CatThingy/bevy-0.10.0

    Update to Bevy 0.10
    MrGVSV authored Mar 6, 2023
    Copy the full SHA
    a607259 View commit details
  3. Bump version 0.6.0 -> 0.7.0

    MrGVSV committed Mar 6, 2023
    Copy the full SHA
    5ecb5db View commit details

Commits on Apr 16, 2023

  1. Reflection rewrite

    MrGVSV committed Apr 16, 2023
    Copy the full SHA
    4025f53 View commit details
  2. Merge pull request #29 from MrGVSV/reflection-rewrite

    Reflection Rewrite
    MrGVSV authored Apr 16, 2023
    Copy the full SHA
    f147228 View commit details
  3. Bump version 0.7.0 -> 0.8.0

    MrGVSV committed Apr 16, 2023
    Copy the full SHA
    20b2994 View commit details
  4. Clarify tagline

    MrGVSV committed Apr 16, 2023
    Copy the full SHA
    97e4dfc View commit details

Commits on Apr 23, 2023

  1. Copy the full SHA
    d19e7e8 View commit details
  2. Merge pull request #30 from MrGVSV/fix-derive-backend-dependency

    Fix: Derive macro requiring backend crate as dependency
    MrGVSV authored Apr 23, 2023
    Copy the full SHA
    5701889 View commit details

Commits on Apr 28, 2023

  1. Copy the full SHA
    d5c13d6 View commit details
  2. Add compile tests

    MrGVSV committed Apr 28, 2023
    Copy the full SHA
    8182fa4 View commit details
  3. Merge pull request #31 from MrGVSV/fix-generics

    Fix generics with `#[schematic(asset)]`
    MrGVSV authored Apr 28, 2023
    Copy the full SHA
    a0f4e22 View commit details
  4. Copy the full SHA
    1e6e439 View commit details

Commits on Apr 29, 2023

  1. Add ProtoAssetEvent

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    73b1414 View commit details
  2. Merge pull request #32 from MrGVSV/add-asset-event

    Add `ProtoAssetEvent`
    MrGVSV authored Apr 29, 2023
    Copy the full SHA
    50843e0 View commit details
  3. Improve reload detection

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    e9122c2 View commit details
  4. Copy the full SHA
    e654af9 View commit details
  5. Add more component impls

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    55bd170 View commit details
  6. Copy the full SHA
    0bafa8b View commit details
  7. Copy the full SHA
    0f04af3 View commit details
  8. Add more bundles impls

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    088be8d View commit details
  9. Add dependency dependencies

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    00174e0 View commit details
  10. Register inner types

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    68dbb4f View commit details
  11. Added bevy_ui example

    MrGVSV committed Apr 29, 2023
    Copy the full SHA
    1258832 View commit details

Commits on Apr 30, 2023

  1. Add ProtoColor

    MrGVSV committed Apr 30, 2023
    Copy the full SHA
    c84dd83 View commit details
  2. Merge pull request #33 from MrGVSV/add-impls

    Add more `Schematics`!
    MrGVSV authored Apr 30, 2023
    Copy the full SHA
    190ed69 View commit details
  3. Added SchematicContext

    MrGVSV committed Apr 30, 2023
    Copy the full SHA
    faca07d View commit details
  4. Add opt-out entity spawning

    MrGVSV committed Apr 30, 2023
    Copy the full SHA
    84cbb77 View commit details
  5. Update README goals

    MrGVSV committed Apr 30, 2023
    Copy the full SHA
    5c84ecc View commit details
  6. Merge pull request #34 from MrGVSV/schematic-context

    Optional spawning and `SchematicContext`
    MrGVSV authored Apr 30, 2023
    Copy the full SHA
    658f42a View commit details
  7. Bump version 0.8.1 -> 0.9.0

    MrGVSV committed Apr 30, 2023
    Copy the full SHA
    15a76e1 View commit details
  8. Copy the full SHA
    03c70aa View commit details

Commits on May 1, 2023

  1. Code review fixes

    wusticality committed May 1, 2023
    Copy the full SHA
    cc4b5ec View commit details
  2. Code review fixes

    wusticality authored and MrGVSV committed May 1, 2023
    Copy the full SHA
    e9fd2a0 View commit details
  3. Copy the full SHA
    f25998a View commit details
  4. Merge pull request #36 from wusticality/load-folder-support

    Add PrototypesMut::load_folder
    MrGVSV authored May 1, 2023
    Copy the full SHA
    97a4695 View commit details
  5. Copy the full SHA
    1f0d316 View commit details

Commits on May 3, 2023

  1. Merge pull request #38 from MrGVSV/fix-expected-asset-path

    Correctly handle `ProtoAsset::HandleId`
    MrGVSV authored May 3, 2023
    Copy the full SHA
    b5e643b View commit details

Commits on May 4, 2023

  1. Fix clippy warnings

    MrGVSV committed May 4, 2023
    Copy the full SHA
    3633b51 View commit details
  2. Add simple CI workflow

    MrGVSV committed May 4, 2023
    Copy the full SHA
    92d4e03 View commit details
  3. Update ci.yml

    MrGVSV authored May 4, 2023
    Copy the full SHA
    a49c385 View commit details
  4. Merge pull request #39 from MrGVSV/clippy

    Add basic CI workflow
    MrGVSV authored May 4, 2023
    Copy the full SHA
    e19c6a9 View commit details

Commits on May 5, 2023

  1. Copy the full SHA
    0913030 View commit details
Showing with 16,148 additions and 2,346 deletions.
  1. +43 −0 .github/workflows/ci.yml
  2. +163 −23 Cargo.toml
  3. +109 −439 README.md
  4. +14 −0 assets/examples/asset_schematic/Level1.prototype.ron
  5. +12 −0 assets/examples/basic_schematic/Player.prototype.ron
  6. +9 −0 assets/examples/basic_schematic/PlayerConfig.prototype.ron
  7. +15 −0 assets/examples/bevy/asset_loading/Camera.prototype.ron
  8. +29 −0 assets/examples/bevy/asset_loading/Cube.prototype.ron
  9. +14 −0 assets/examples/bevy/asset_loading/Light.prototype.ron
  10. +23 −0 assets/examples/bevy/asset_loading/Monkey.prototype.ron
  11. +29 −0 assets/examples/bevy/asset_loading/Sphere.prototype.ron
  12. +122 −0 assets/examples/bevy/asset_loading/monkey/Monkey.gltf
  13. +44 −0 assets/examples/bevy/sprite_sheet/Player.prototype.ron
  14. +46 −0 assets/examples/bevy/ui/Blue.prototype.ron
  15. +68 −0 assets/examples/bevy/ui/Left.prototype.ron
  16. +118 −0 assets/examples/bevy/ui/Red.prototype.ron
  17. +44 −0 assets/examples/bevy/ui/Right.prototype.ron
  18. +13 −0 assets/examples/bevy/ui/Root.prototype.ron
  19. +281 −0 assets/examples/bevy/ui/Scrollbox.prototype.ron
  20. +3 −0 assets/examples/custom_config/Player.prototype.ron
  21. +11 −0 assets/examples/custom_loader/Player.custom.yaml
  22. +11 −0 assets/examples/custom_schematic/CustomSchematic.prototype.ron
  23. +4 −0 assets/examples/cycles/CycleA.prototype.ron
  24. +4 −0 assets/examples/cycles/CycleB.prototype.ron
  25. +4 −0 assets/examples/cycles/CycleC.prototype.ron
  26. +17 −0 assets/examples/hierarchy/Child.prototype.ron
  27. +16 −0 assets/examples/hierarchy/Hat.prototype.ron
  28. +22 −0 assets/examples/hierarchy/HatSalesman.prototype.ron
  29. +16 −0 assets/examples/hierarchy/Lock.prototype.ron
  30. +87 −0 assets/examples/hierarchy/Parent.prototype.ron
  31. +16 −0 assets/examples/hot_reload/ReloadableSprite.prototype.ron
  32. +16 −0 assets/examples/loading/Player.prototype.ron
  33. +10 −0 assets/examples/templates/Big.prototype.ron
  34. +11 −0 assets/examples/templates/Green.prototype.ron
  35. +28 −0 assets/examples/templates/Player.prototype.ron
  36. +8 −0 assets/examples/templates/Red.prototype.yaml
  37. +10 −0 assets/examples/templates/Small.prototype.ron
  38. +10 −0 assets/fonts/AUTHORS.txt
  39. BIN assets/fonts/JetBrainsMono-Regular.ttf
  40. +93 −0 assets/fonts/OFL.txt
  41. +0 −5 assets/prototypes/emoji_angry.yaml
  42. +0 −6 assets/prototypes/emoji_happy.yaml
  43. +0 −6 assets/prototypes/emoji_sad.yaml
  44. +0 −5 assets/prototypes/emoji_silly.yaml
  45. +0 −9 assets/prototypes/person_test_1.yaml
  46. +0 −17 assets/prototypes/person_test_2.json
  47. +0 −9 assets/prototypes/person_test_3.yaml
  48. +0 −6 assets/prototypes/sprite_test.yaml
  49. +0 −6 assets/prototypes/templates/alice.yaml
  50. +0 −6 assets/prototypes/templates/bob.yaml
  51. +0 −6 assets/prototypes/templates/healthy.template.yaml
  52. +0 −3 assets/prototypes/templates/mystery.yaml
  53. +0 −16 assets/prototypes/templates/npc.template.yaml
  54. +0 −17 assets/prototypes/templates/urist.yaml
  55. BIN assets/textures/platformer/items/keyYellow.png
  56. BIN assets/textures/platformer/items/mushroomBrown.png
  57. BIN assets/textures/platformer/items/mushroomRed.png
  58. +14 −0 assets/textures/platformer/license.txt
  59. BIN assets/textures/platformer/player/p1_front.png
  60. BIN assets/textures/platformer/player/p2_front.png
  61. BIN assets/textures/platformer/player/p3_front.png
  62. BIN assets/textures/platformer/tiles/lock_yellow.png
  63. BIN assets/textures/rpg/chars/gabe/gabe-idle-run.png
  64. +23 −0 assets/textures/rpg/release.txt
  65. BIN assets/textures/sprite.png
  66. +75 −0 bevy_proto_backend/Cargo.toml
  67. +1 −0 bevy_proto_backend/README.md
  68. +86 −0 bevy_proto_backend/src/assets/event.rs
  69. +31 −0 bevy_proto_backend/src/assets/extension.rs
  70. +110 −0 bevy_proto_backend/src/assets/mod.rs
  71. +205 −0 bevy_proto_backend/src/assets/proto.rs
  72. +50 −0 bevy_proto_backend/src/assets/schematic.rs
  73. +71 −0 bevy_proto_backend/src/children/builder.rs
  74. +60 −0 bevy_proto_backend/src/children/collection.rs
  75. +11 −0 bevy_proto_backend/src/children/mod.rs
  76. +34 −0 bevy_proto_backend/src/children/prototypical_child.rs
  77. +167 −0 bevy_proto_backend/src/cycles/cycle.rs
  78. +54 −0 bevy_proto_backend/src/cycles/mod.rs
  79. +59 −0 bevy_proto_backend/src/cycles/node.rs
  80. +21 −0 bevy_proto_backend/src/cycles/response.rs
  81. +107 −0 bevy_proto_backend/src/deps/collection.rs
  82. +13 −0 bevy_proto_backend/src/deps/mod.rs
  83. +3 −0 bevy_proto_backend/src/impls/bevy_impls/animation.rs
  84. +63 −0 bevy_proto_backend/src/impls/bevy_impls/asset.rs
  85. +23 −0 bevy_proto_backend/src/impls/bevy_impls/core.rs
  86. +90 −0 bevy_proto_backend/src/impls/bevy_impls/core_pipeline.rs
  87. +13 −0 bevy_proto_backend/src/impls/bevy_impls/gltf.rs
  88. +44 −0 bevy_proto_backend/src/impls/bevy_impls/mod.rs
  89. +382 −0 bevy_proto_backend/src/impls/bevy_impls/pbr.rs
  90. +5 −0 bevy_proto_backend/src/impls/bevy_impls/render/mod.rs
  91. +188 −0 bevy_proto_backend/src/impls/bevy_impls/render/registrations.rs
  92. +42 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/boxes.rs
  93. +55 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/capsules.rs
  94. +22 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/circles.rs
  95. +18 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/cubes.rs
  96. +32 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/cylinders.rs
  97. +21 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/mod.rs
  98. +30 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/planes.rs
  99. +24 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/polygons.rs
  100. +23 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/quads.rs
  101. +42 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/spheres.rs
  102. +24 −0 bevy_proto_backend/src/impls/bevy_impls/render/shapes/toruses.rs
  103. +228 −0 bevy_proto_backend/src/impls/bevy_impls/sprite.rs
  104. +195 −0 bevy_proto_backend/src/impls/bevy_impls/text.rs
  105. +17 −0 bevy_proto_backend/src/impls/bevy_impls/transform.rs
  106. +283 −0 bevy_proto_backend/src/impls/bevy_impls/ui.rs
  107. +17 −0 bevy_proto_backend/src/impls/bevy_impls/window.rs
  108. +131 −0 bevy_proto_backend/src/impls/macros.rs
  109. +6 −0 bevy_proto_backend/src/impls/mod.rs
  110. +15 −0 bevy_proto_backend/src/lib.rs
  111. +67 −0 bevy_proto_backend/src/load/asset_loader.rs
  112. +235 −0 bevy_proto_backend/src/load/load_context.rs
  113. +123 −0 bevy_proto_backend/src/load/loader.rs
  114. +7 −0 bevy_proto_backend/src/load/mod.rs
  115. +19 −0 bevy_proto_backend/src/path/context.rs
  116. +49 −0 bevy_proto_backend/src/path/de.rs
  117. +30 −0 bevy_proto_backend/src/path/error.rs
  118. +66 −0 bevy_proto_backend/src/path/list.rs
  119. +13 −0 bevy_proto_backend/src/path/mod.rs
  120. +222 −0 bevy_proto_backend/src/path/proto_path.rs
  121. +91 −0 bevy_proto_backend/src/plugin.rs
  122. +286 −0 bevy_proto_backend/src/proto/color.rs
  123. +346 −0 bevy_proto_backend/src/proto/commands.rs
  124. +22 −0 bevy_proto_backend/src/proto/component.rs
  125. +153 −0 bevy_proto_backend/src/proto/config.rs
  126. +39 −0 bevy_proto_backend/src/proto/error.rs
  127. +21 −0 bevy_proto_backend/src/proto/mod.rs
  128. +183 −0 bevy_proto_backend/src/proto/prototypes.rs
  129. +71 −0 bevy_proto_backend/src/proto/prototypical.rs
  130. +59 −0 bevy_proto_backend/src/proto/storage.rs
  131. +32 −0 bevy_proto_backend/src/registration/manager.rs
  132. +8 −0 bevy_proto_backend/src/registration/mod.rs
  133. +40 −0 bevy_proto_backend/src/registration/params.rs
  134. +282 −0 bevy_proto_backend/src/registration/registry.rs
  135. +29 −0 bevy_proto_backend/src/registration/systems.rs
  136. +137 −0 bevy_proto_backend/src/schematics/collection.rs
  137. +47 −0 bevy_proto_backend/src/schematics/context.rs
  138. +208 −0 bevy_proto_backend/src/schematics/dynamic.rs
  139. +23 −0 bevy_proto_backend/src/schematics/error.rs
  140. +53 −0 bevy_proto_backend/src/schematics/id.rs
  141. +53 −0 bevy_proto_backend/src/schematics/mod.rs
  142. +114 −0 bevy_proto_backend/src/schematics/schematic.rs
  143. +87 −0 bevy_proto_backend/src/templates/collection.rs
  144. +7 −0 bevy_proto_backend/src/templates/mod.rs
  145. +418 −0 bevy_proto_backend/src/tree/access.rs
  146. +180 −0 bevy_proto_backend/src/tree/builder.rs
  147. +440 −0 bevy_proto_backend/src/tree/entity_tree.rs
  148. +13 −0 bevy_proto_backend/src/tree/mod.rs
  149. +148 −0 bevy_proto_backend/src/tree/proto_tree.rs
  150. +13 −3 bevy_proto_derive/Cargo.toml
  151. +54 −0 bevy_proto_derive/src/asset_schematic/container_attributes.rs
  152. +165 −0 bevy_proto_derive/src/asset_schematic/derive.rs
  153. +44 −0 bevy_proto_derive/src/asset_schematic/external.rs
  154. +6 −0 bevy_proto_derive/src/asset_schematic/mod.rs
  155. +0 −68 bevy_proto_derive/src/attributes.rs
  156. +19 −0 bevy_proto_derive/src/common/data/derive_type.rs
  157. +7 −0 bevy_proto_derive/src/common/data/mod.rs
  158. +35 −0 bevy_proto_derive/src/common/data/schematic_data.rs
  159. +153 −0 bevy_proto_derive/src/common/data/variants.rs
  160. +203 −0 bevy_proto_derive/src/common/fields/asset_config.rs
  161. +160 −0 bevy_proto_derive/src/common/fields/config.rs
  162. +37 −0 bevy_proto_derive/src/common/fields/entity_config.rs
  163. +11 −0 bevy_proto_derive/src/common/fields/mod.rs
  164. +383 −0 bevy_proto_derive/src/common/fields/schematic_field.rs
  165. +237 −0 bevy_proto_derive/src/common/fields/schematic_fields.rs
  166. +69 −0 bevy_proto_derive/src/common/input/attr.rs
  167. +89 −0 bevy_proto_derive/src/common/input/converters.rs
  168. +232 −0 bevy_proto_derive/src/common/input/generate.rs
  169. +38 −0 bevy_proto_derive/src/common/input/input_ty.rs
  170. +107 −0 bevy_proto_derive/src/common/input/io.rs
  171. +13 −0 bevy_proto_derive/src/common/input/mod.rs
  172. +22 −0 bevy_proto_derive/src/common/input/output_ty.rs
  173. +3 −0 bevy_proto_derive/src/common/mod.rs
  174. +0 −18 bevy_proto_derive/src/constants.rs
  175. +292 −74 bevy_proto_derive/src/lib.rs
  176. +99 −0 bevy_proto_derive/src/schematic/container_attributes.rs
  177. +192 −0 bevy_proto_derive/src/schematic/derive.rs
  178. +45 −0 bevy_proto_derive/src/schematic/external.rs
  179. +6 −0 bevy_proto_derive/src/schematic/mod.rs
  180. +131 −0 bevy_proto_derive/src/utils/attr.rs
  181. +40 −0 bevy_proto_derive/src/utils/constants.rs
  182. +43 −0 bevy_proto_derive/src/utils/crates.rs
  183. +42 −0 bevy_proto_derive/src/utils/exports.rs
  184. +69 −0 bevy_proto_derive/src/utils/meta.rs
  185. +11 −0 bevy_proto_derive/src/utils/mod.rs
  186. +24 −0 bevy_proto_derive/src/utils/next_id.rs
  187. +43 −0 examples/README.md
  188. +128 −0 examples/asset_schematic.rs
  189. +0 −112 examples/attributes.rs
  190. +0 −94 examples/basic.rs
  191. +102 −0 examples/basic_schematic.rs
  192. +0 −108 examples/bench.rs
  193. +58 −0 examples/bevy/asset_loading.rs
  194. +83 −0 examples/bevy/sprite_sheet.rs
  195. +130 −0 examples/bevy/ui.rs
  196. +0 −70 examples/bundles.rs
  197. +104 −0 examples/custom_config.rs
  198. +126 −0 examples/custom_loader.rs
  199. +122 −0 examples/custom_schematic.rs
  200. +62 −0 examples/cycles.rs
  201. +172 −0 examples/derive_schematic.rs
  202. +200 −0 examples/hierarchy.rs
  203. +113 −0 examples/hot_reload.rs
  204. +89 −0 examples/loading.rs
  205. +64 −54 examples/templates.rs
  206. +0 −83 src/components.rs
  207. +53 −0 src/conditions.rs
  208. +211 −0 src/config.rs
  209. +873 −0 src/custom.rs
  210. +0 −511 src/data.rs
  211. +115 −0 src/de/child.rs
  212. +90 −0 src/de/child_value.rs
  213. +64 −0 src/de/children.rs
  214. +9 −0 src/de/mod.rs
  215. +154 −0 src/de/proto.rs
  216. +27 −0 src/hooks.rs
  217. +115 −83 src/lib.rs
  218. +82 −0 src/loader.rs
  219. +79 −118 src/plugin.rs
  220. +34 −0 src/proto/child.rs
  221. +37 −0 src/proto/error.rs
  222. +9 −0 src/proto/mod.rs
  223. +70 −0 src/proto/prototype.rs
  224. +0 −288 src/prototype.rs
  225. +148 −0 src/schematics.rs
  226. +0 −83 src/utils.rs
  227. +6 −0 tests/compile_tests.rs
  228. +40 −0 tests/compile_tests/generics.pass.rs
43 changes: 43 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# partially adopted from https://github.com/Leafwing-Studios/Emergence/blob/main/.github/workflows/ci.yml

name: CI

on:
pull_request:
branches: [ main ]
push:
branches: [ main ]

env:
CARGO_TERM_COLOR: always
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse

jobs:
format-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: 🦀 Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- name: 📦 Cache cargo
uses: Leafwing-Studios/cargo-cache@v1
- name: 📥 Install alsa and udev
run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev libwayland-dev libxkbcommon-dev
- name: 🧪 Run rustfmt
run: cargo fmt --check
clippy-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: 🦀 Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: 📦 Cache cargo
uses: Leafwing-Studios/cargo-cache@v1
- name: 📥 Install alsa and udev
run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev libwayland-dev libxkbcommon-dev
- name: 🧪 Run clippy
run: cargo clippy --workspace --examples --all-targets --all-features -- -D warnings
186 changes: 163 additions & 23 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,50 +1,190 @@
[package]
name = "bevy_proto"
version = "0.5.0"
version = "0.11.0"
edition = "2021"
authors = ["Gino Valente <gino.valente.code@gmail.com>"]
description = "Create config files for entities in Bevy"
repository = "https://github.com/MrGVSV/bevy_proto"
license = "MIT OR Apache-2.0"
keywords = ["bevy", "archetype", "config", "entity"]
keywords = ["bevy", "prefab", "blueprint", "config", "entity"]
readme = "README.md"
exclude = ["assets/**/*", ".github/**/*"]

[workspace]
members = ["bevy_proto_derive", "bevy_proto_backend"]

[features]
default = [
# Crate Features
"auto_name",
"custom_schematics",
"ron",
# Bevy Features
"bevy_animation",
"bevy_audio",
"bevy_core_pipeline",
"bevy_gltf",
"bevy_pbr",
"bevy_render",
"bevy_scene",
"bevy_sprite",
"bevy_text",
"bevy_ui",
]

# When enabled, entities will automatically use a prototype's ID as its `Name`
auto_name = ["bevy_proto_backend/auto_name"]
# When enabled, some custom schematics will be available to use.
custom_schematics = []
# Enables RON deserialization
ron = ["dep:ron"]
# Enables YAML deserialization
yaml = ["dep:serde_yaml"]

# Enables registrations for types available with Bevy's bevy_animation feature
bevy_animation = ["bevy/bevy_animation", "bevy_proto_backend/bevy_animation"]
# Enables registrations for types available with Bevy's bevy_audio feature
bevy_audio = ["bevy/bevy_audio", "bevy_proto_backend/bevy_audio"]
# Enables registrations for types available with Bevy's bevy_core_pipeline feature
bevy_core_pipeline = [
"bevy/bevy_core_pipeline",
"bevy_proto_backend/bevy_core_pipeline",
"bevy_render",
]
# Enables registrations for types available with Bevy's bevy_gltf feature
bevy_gltf = [
"bevy/bevy_gltf",
"bevy_proto_backend/bevy_gltf",
"bevy_core_pipeline",
"bevy_pbr",
"bevy_render",
"bevy_scene",
]
# Enables registrations for types available with Bevy's bevy_pbr feature
bevy_pbr = [
"bevy/bevy_pbr",
"bevy_proto_backend/bevy_pbr",
"bevy_core_pipeline",
]
# Enables registrations for types available with Bevy's bevy_render feature
bevy_render = ["bevy/bevy_render", "bevy_proto_backend/bevy_render"]
# Enables registrations for types available with Bevy's bevy_scene feature
bevy_scene = [
"bevy/bevy_scene",
"bevy_proto_backend/bevy_scene",
"bevy_render",
]
# Enables registrations for types available with Bevy's bevy_sprite feature
bevy_sprite = [
"bevy/bevy_sprite",
"bevy_proto_backend/bevy_sprite",
"bevy_render",
"bevy_core_pipeline",
]
# Enables registrations for types available with Bevy's bevy_text feature
bevy_text = [
"bevy/bevy_text",
"bevy_proto_backend/bevy_text",
"bevy_sprite",
"bevy_render",
]
# Enables registrations for types available with Bevy's bevy_ui feature
bevy_ui = [
"bevy/bevy_ui",
"bevy_proto_backend/bevy_ui",
"bevy_sprite",
"bevy_render",
"bevy_core_pipeline",
"bevy_text",
]

[dependencies]
bevy_proto_derive = { version = "0.2", path = "bevy_proto_derive" }
bevy = { version = "0.8", default-features = false, features = ["bevy_asset"] }
bevy_proto_backend = { version = "0.4", path = "./bevy_proto_backend", default-features = false }
bevy = { version = "0.11", default-features = false, features = ["bevy_asset"] }
anyhow = "1.0"
serde = "1.0"
typetag = "0.2"
serde_yaml = "0.9"
dyn-clone = "1.0"
indexmap = "1.9"
thiserror = "1.0"
path-clean = "1.0"
ron = { version = "0.8", optional = true, default-features = false }
serde_yaml = { version = "0.9", optional = true, default-features = false }

[dev-dependencies]
bevy = "0.8"
ron = "0.8"
serde_yaml = "0.9"
bevy = "0.11.0"
bevy_prototype_lyon = "0.9.0"
trybuild = "1.0.71"

[features]
default = ["analysis"]
# If enabled, analyses prototype dependencies and logging (or panicking if `no_cycles` is enabled) on error
analysis = []
# If enabled, panics when a dependency cycle is found, otherwise logs a warning
no_cycles = ["analysis"]
[[example]]
name = "asset_schematic"
path = "examples/asset_schematic.rs"
required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]

[[example]]
name = "basic_schematic"
path = "examples/basic_schematic.rs"
required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]

[[example]]
name = "custom_config"
path = "examples/custom_config.rs"
required-features = ["ron", "auto_name"]

[[example]]
name = "basic"
path = "examples/basic.rs"
name = "custom_loader"
path = "examples/custom_loader.rs"
required-features = ["ron", "auto_name"]

[[example]]
name = "bundles"
path = "examples/bundles.rs"
name = "custom_schematic"
path = "examples/custom_schematic.rs"
required-features = ["ron", "auto_name"]

[[example]]
name = "attributes"
path = "examples/attributes.rs"
name = "cycles"
path = "examples/cycles.rs"
required-features = ["ron", "auto_name"]

[[example]]
name = "derive_schematic"
path = "examples/derive_schematic.rs"
required-features = []

[[example]]
name = "hierarchy"
path = "examples/hierarchy.rs"
required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]

[[example]]
name = "hot_reload"
path = "examples/hot_reload.rs"
required-features = ["ron", "custom_schematics", "auto_name", "bevy_sprite"]

[[example]]
name = "loading"
path = "examples/loading.rs"
required-features = ["ron", "auto_name"]

[[example]]
name = "templates"
path = "examples/templates.rs"
required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite", "yaml"]

[[example]]
name = "bevy_asset_loading"
path = "examples/bevy/asset_loading.rs"
required-features = ["ron", "auto_name", "custom_schematics"]

[[example]]
name = "bench"
path = "examples/bench.rs"
name = "bevy_sprite_sheet"
path = "examples/bevy/sprite_sheet.rs"
required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]

[[example]]
name = "bevy_ui"
path = "examples/bevy/ui.rs"
required-features = ["ron", "auto_name", "custom_schematics"]

[[test]]
name = "compile_tests"
path = "tests/compile_tests.rs"
Loading