Skip to content

Conversation

@Indra-db
Copy link
Owner

@Indra-db Indra-db commented Jul 30, 2025

changes:

  • benchmark suite that measures performance of several ecs functions. This will be tracked release over release to prevent regressions and test for optimizations.
  • introduction of field and field_mut instead of just field [breaking❗]
  • introduction of get_field and field instead of just field. get returns option as before, the non-get variant panics instead. [breaking❗]
  • TableIter::iter() (for i in it.iter()) now returns a FieldIndex type instead of usize. This allows for mitigating bound checking. [breaking❗]
  • Fields don't deref to the slice components anymore, Index traits are implemented instead.
  • introduction of .len(), .get(), .get_mut() on Field and FieldMut types
  • query/observer/system now share the same internal iteration code, making maintenance and bug fixing easier.
  • query/observer/system iteration speed is drastically improved, ranging from 80-96% improvements in most query benchmarks.
  • .each_iter() on query-like types is removed, use .run() instead. [breaking❗]
image

@Indra-db Indra-db changed the title [breaking changes] Introduce bench suite + query/system performance improvements + other [breaking] Introduce bench suite + query/system performance improvements + other Jul 30, 2025
@Indra-db Indra-db merged commit f8a3fec into main Jul 30, 2025
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants