Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

version 2.5 #121

Merged
merged 1 commit into from
Oct 20, 2023
Merged

version 2.5 #121

merged 1 commit into from
Oct 20, 2023

Conversation

Quillraven
Copy link
Owner

@Quillraven Quillraven commented Oct 17, 2023

  • Changelog
  • Wiki update for entity versioning
  • Wiki update for entity tags
  • Wiki update for serialization + snapshot

Changelog

  • NEW (BREAKING CHANGE): Entities are no longer value classes. They are now a data class that contains the previous id and a new version. With this new functionality it is now way easier to safely reference entities in components. Big shoutout to @dragbone for the contribution! [#113 entity version #115]
  • NEW: A new EntityTag functionality was added which is a more memory efficient and faster way to create components without data. Thanks to @LobbyDivinus for the suggestion and help during development [add entity tag support #119]
  • NEW (BREAKING CHANGE): a new Snapshot class was introduced to support the new EntityTag functionality. Check the wiki's serialization page for more details
  • UPDATE: Wiki contains updates for the new functionalities and an updated serialization page using kotlinx-serialization with the latest changes
  • UPDATE: improved ComponentsHolder memory usage slightly (no longer stores a string property of its name) [refactor ComponentsHolder toString() #110]
  • UPDATE: great performance improvement for BitArray usage which makes entity creation and removal even faster. Thank you @tommyettinger for the contribution! [Optimization and cleanup for bit arrays. #111]
  • UPDATE: memory improvement for MutableEntityBag. Thanks to @LobbyDivinus [Use inline functions for MutableEntityBag #117]
  • UPDATE: some minor improvements when it comes to serialization with kotlinx-serialization
  • UPDATE: following versions got updated:
    • Kotlin 1.9.10
    • Dokka 1.9.10
    • Benchmark 0.4.9
    • Kotlinx-serialization 1.6.0
    • Gradle 8.4
  • BUGFIX: fixed a potential issue when iterating over the same family in a nested way while modifying it

@Quillraven Quillraven added this to the 2.5 milestone Oct 17, 2023
@Quillraven
Copy link
Owner Author

I will do some final tests on the weekend and will then release the new version. @jobe-m: Might be worth to checkout the new serialization wiki page, its examples and also the new SerializationTest class. I think you can remove your BaseSerializer interface in the KorGE example. It should work without it.

@Quillraven Quillraven merged commit 9471557 into master Oct 20, 2023
4 checks passed
@Quillraven Quillraven deleted the version_2.5 branch October 20, 2023 04:03
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.

1 participant