The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
- Rename @_functionBuilder to @resultBuilder for Swift 5.4+ (#44)
- CI updates / GitHub actions (#42, #43)
- Community files (#39, #41)
- Fix issue #36 - ComponentAdded event emission broken for multi-component assigns
- Add default empty component builder for bulk entity creation
- Add NexusEventDelegate tests
- Update CI to test with Xcode 12.2
- Remove unused events
- Add `Optional` support to Entity value getter/setter/subscripts
- Add `createEntity` convenience methods to Entity
- Extend `assign(component(s)...)` capabilities
- Refine `Entity.ComponentsIterator` implementation
- Remove `allComponents()` from Entity
- Update WASM CI
- Add `Component` value [getter](https://github.com/fireblade-engine/ecs/wiki/Entity#getvalueat) and [setter](https://github.com/fireblade-engine/ecs/wiki/Entity#setvaluefor) by `KeyPath` to Entity
- Refine subscripts on `Entity` for `Component` lookup
- Refine `Component` lookup getter API on `Nexus`
- Conform all iterators to [`Sequence`](https://developer.apple.com/documentation/swift/Sequence) and [`LazySequenceProtocol`](https://developer.apple.com/documentation/swift/lazysequenceprotocol)
- Adds `EntitiesIterator` to iterate over all entities in a nexus (issue #32)
- Conforms `ComponentsIterator` to `Sequence`
Finite State Machine 🎰
3 years ago
- 🆕 **finite entity state machine** by @igorkravchenko (PR #30)
- Add [CONTRIBUTING guide](https://github.com/fireblade-engine/ecs/blob/master/CONTRIBUTING.md)
- Update CI to Xcode 11.7 + 12
- Minor cleanups
- Improve performance and reduce memory footprint
- Refactor EntityIdentifierGenerator
- Refactor EntityIdentifier
- Refine ComponentIdentifier
- Add Swift Package Index compatibility badges
- Remove `nexus.get(unsafeEntity)` and `nexus.get(entity)` (use `nexus.entity(from)` instead)
- Extend tests and coverage
- Refine EntityIdentifier implementation
- Code coverage reports via GitHub actions
- Remove TravisCI
Support WebAssembly (WASM)
3 years ago
- Adds support for WebAssembly (WASM) - <https://swiftwasm.org>
- Adds `createMember` function builder to families
- Adds `deleteMembers` to families
- Cleanups