specs icon indicating copy to clipboard operation
specs copied to clipboard

New flagged storage for parallel joins

Open Imberflur opened this issue 4 years ago • 0 comments

Checklist

  • [ ] I've added tests for all code changes and additions (where applicable)
  • [ ] I've added a demonstration of the new feature to one or more examples
  • [ ] I've updated the book to reflect my changes
  • [ ] Usage of new public items is shown in the API docs

API changes

Breaking: RestrictedStorage removed (unsound without streaming JoinIter) Breaking: DerefFlaggedStorage removed (unsound without streaming JoinIter) Breaking: JoinIter::get/JoinIter::get_unchecked removed (unsound see https://github.com/amethyst/specs/issues/647) (can probably be brought back with a streaming JoinIter impl using GATs)

UnsplitFlaggedStorage added for deferred mutable access (like DerefFlaggedStorage) that can also be used in parallel joins (unlike any other flagged storage) (locked behind nightly feature).

Breaking: Safety comments on Join/UnprotectedStorage traits improved (downstream crates that implement novel storages should review these).

Imberflur avatar Oct 29 '21 04:10 Imberflur