All Versions
19
Latest Version
Avg Release Cycle
59 days
Latest Release
1322 days ago

Changelog History
Page 2

  • v0.12.1 Changes

    August 09, 2018
    • ➕ Add #[must_use] to entity builders to avoid people forgetting to call .build(). (#443)
  • v0.12.0 Changes

    June 26, 2018
    • Join::open() and Storage::unprotected_storage_mut() have been marked unsafe. Thanks to @andrewhickman for discovering this unsoundness!
    • ➕ Add common Builder trait to EntityBuilder and LazyBuilder (#426)
    • ➕ Add common MarkedBuilder trait to EntityBuilder and LazyBuilder (#426)
    • ➕ Add LazyUpdate::exec_mut which allows adding a resource from a system (#433)
    • ➕ Add build_entity() to EntitiesRes so you can use builder syntax in a system.
    • ➕ Add marked() to LazyBuilder to keep parity with EntityBuilder (#420)
    • 🛠 Fix U64MarkerAllocator's internal index not being updated on saveload::DeserializeComponents (#420)
  • v0.11.2 Changes

    May 20, 2018
    • Add unprotected_storage() and unprotected_storage_mut() methods to Storage (#419)
  • v0.11.1 Changes

    May 18, 2018
    • ➕ Add diagrams to book, small code fixes in the book (#412, #416, #417)
    • Increase tuple size for SerializeComponents / DeserializeComponents (#415)
  • v0.11.0 Changes

    May 14, 2018
    • 👌 Improve docs, book and examples (#278, #281, #283, #285, #296, #313, #316, #322, #350, #356, #363)
    • ➕ Add StorageEntry for easier handling of inserting/removing component (#274)
    • ➕ Add EntityBuilder::marked convenience method (#287)
    • ➕ Add saveload module for easy entity serialization (#275, #337)
    • ➕ Add nightly feature flag for unstable features. (#290)
    • ➕ Add TrackedStorage, a more ergonomic variant to FlaggedStorage (#291)
    • Exclusive/mutable aliasing for getting an EntityBuilder to prevent unsafety. (#294)
    • ➕ Add Bundle for registering multiple resources and components at once. (#296)
    • ➕ Add get() method to Join for retrieving a single entities component in bulk. (#299)
    • Implementations of Join for owned BitSets, including AtomicBitset. (#303)
    • ✂ Remove FlaggedStorage (new storage uses the same name) and TrackedStorage in favor of the new Tracked api. (#305)
    • ➕ Add prelude module for commonly used structures and traits. (#305)
    • ➕ Add LazyBuilder for easier entity construction in systems. (#320)
    • Replace Entry with PairedStorage to prevent runtime checks for RestrictedStorage. (#324)
    • 🗄 Deprecate check() which hides a possibly expensive clone. (#326)
    • ➕ Add ChangeSet for easy application to components. (#344)
    • 👉 Use criterion.rs for benchmarks (#348)
    • ⚡️ Update to rayon 1.0 (#352)
    • ➕ Add World::system_data method (#369)
    • 💥 BREAKING: Change the way resources are handled (see below) (shred#77)
    • Export all items currently in prelude in the root of the crate (#394)
    • If an EntityBuilder drops before being built the entity will now be deleted on maintain (#394)
    • ✂ Removed some redundancy in documentation (#394)

    🚀 There is one bigger breaking change in this release. Almost allFetch / FetchMut types need to be replaced 0️⃣ with Read / Write. Both require the resource to implement Default, because now the resources can be ➕ added to the world automatically. If you want to make the resource optional and you don't have a sensible 0️⃣ default, Option<Read> / Option<Write> can be used. If you absolutely need the resource and it doesn't work without, use ReadExpect which will panic in case the resource does not exist (that's the same behavior as before).

  • v0.10.0 Changes

    October 04, 2017
    • Separate CheckStorage into two variants and fix soundness issues (#203)
    • 🛠 Fix Merge system and add test for it (#243, #248)
    • ➕ Add more examples, docs, tests, benchmarks (#249, #251, #254, #256, #258)
    • 👉 Use Results to make Specs more robust (#260)
    • Check code coverage with cargo-travis (#265)
    • 👉 Make common::Errors atomic and more convenient (#255, #262)
    • ➕ Add World::delete_all to clear the world (#257)
    • 🛠 Fix insertion into occupied NullStorage entry ([#269])
    • ➕ Add Storage::drain method (#273)
  • v0.9.3 Changes

    July 22, 2017
    • ➕ Add specs-derive crate, custom #[derive] for components (#192)
    • ➕ Add lazy updates: insert and remove components, execute closures on world (#214, #221)
  • v0.9.2 Changes

    July 02, 2017
    • 🛠 Fixed grammar in book (#198)
    • 👍 Better docs for World and better panic message (#199)
    • ➕ Add support for Emscripten (#205)
    • 🔄 Change examples to use FooStorage<Self> and destructure system data in method head (#206)
    • AntiStorage for CheckStorage (#208)
    • ↔ Integrate futures by introducing a common module (#209)
  • v0.4.1

    February 12, 2020