v0.6.0
Breaking changes
Require archetype definitions to be sorted
This was done to simplify macro logic, which led to compile time performance improvvments.
Per system inboxes.
This fixes an unintuitive situation where an inbox appears in the system list before the outbox. In that case, events are sent, but never received because all the mailboxes were cleared at the end of every tick.
With this change, each system gets its own inbox, which is cleared after the system executes. It will mean more memory usage, but the difference should be small. And the behavior will be much more intuitive.
New Features
- Add state management via the
active
pragma. See readme for details - Add
SysVar.getOrPut
- Add
Shared.isSome
- Add
Inbox.len
Bundle
pragma. See readme for details
Other changes of note
- Many compile time speed improvements
- Various bug fixes
- Improved generic alias handling