Releases: jMonkeyEngine-Contributions/zay-es
Zay-ES Core 1.6.0
A maintenance release with some API improvements, usability improvements, and some bug fixes.
Highlights: Being able to index fields and automatically perform some table structure updates when the classes change.
Change log:
- Modified SqlEntityData to allowing specifying the max string size for the StringIndex (default is still 50 characters)
- Modified StringTable to automatically upgrade the table if the specified max size is larger than the current column size.
- Added EntityData.removeComponents() and implementations to various default implementations. Allows removing more than one component at a time similar to the way setComponents() can set more than one at a time.
- Added SqlComponentFactory and refactored the SqlEntityData classes to use it. This allows overriding the default result set -> component creation to customize it for different object types.
- Modified Name to be able to auto-truncate if the name exceeds the storage limit (80 characters), else it will throw an illegal argument exception.
- Switched some SuppressWarnings("unchecked") with SafeVarargs.
- Added CreatedBy.filter() for easily creating a ComponentFilter for createdBy.
- Added an IndexedField annotation to mark fields that should use indexing when available.
- Updated the es.sql code to look for IndexedField and create indexes for types with IndexedField fields.
- Added basic support for primitive array types in the SQL layer.
- Fixed a bug in the SQL layer when saving components with no fields.
- Updated ComponentTable to automatically add new table fields with 'null' values.
- Updated FieldTypes.PrimitiveField to support null DB values default to 0.
- Added a Name.filter() convenience method.
Zay-ES-Net Release 1.6.0
Bug fixes and compatibility changes to match Zay-ES-Core 1.6.0
Changelog:
- Fixed a bug where only the first EntityChange was being sent if multiple changes happened for the same entity + component type.
- Added a bunch of trace logging to HostedEntityData.
- Updated implementations with new removeComponents() method from the EntityData interface.
Zay-ES Core 1.5.0
A maintenance release with some API improvements and some bug fixes.
Change log:
- Added some trace logging to DefaultEntityData.removeEntity() and DefaultEntityData.removeComponent()
- Added the PersistentEntityData interface to allow EntityData implementations to implement persistence-specific methods.
- Modified SqlEntityData to implement the PersistentEntityData interface.
- Added PersistentEntityData.markPersistentType() for indicating that a component should be persistent even if it doesn't implement the PersistentComponent interface. Sometimes a library component's persistability is not black and white between one codebase and another and requiring interface implementation was too restrictive.
- Modified the sql ComponentTable class to work with non-public type constructors.
- Fixed sql ComponentTable to handle components with no fields.
- Added a proper toString() method to DefaultWatchedEntity.
- Fixed redundant EntityChange events from being sent if EntityData.removeEntity() is used.
Zay-ES-Net release 1.5.2
A small bug fix release. 1.5.1 and 1.5.2 have been combined because 1.5.1 had some additional debug code in it that wasn't noticed until after publishing.
Change log:
- Fixed a NPE caused by rare race condition during connection tear-down when active entity sets are still present.
- Removed some debug code from the release.
Zay-ES core 1.4.0
Maintenance release to upgrade to gradle 7.4.2 and setup publishing to maven central.
Change log:
- Upgraded the build to use gradle 7.4.2
- Migrated publishing to maven central instead of jcenter
Zay-ES-Net release 1.5.0
Maintenance release to upgrade to gradle 7.4.2 and setup publishing to maven central.
Change log:
- Upgraded the build to use gradle 7.4.2
- Migrated publishing to maven central instead of jcenter
Zay-ES core 1.3.2
Just a javadoc update.
- Updated StringIndex javadoc to provide more information.
Zay-ES-Net release 1.4.3
Small patch release including one small but serious bug fix.
Change log:
- Fixed an NPE in RemoteEntityData (presumably) when an entity set has been
closed while messages from the server are still pending.
Zay-ES-Net release 1.4.2
Small patch release including one small but serious bug fix.
Change log:
- Fixed a bug in RemoteStringIndex where id=0 was being converted to id=-1 as if the item wasn't mapped.
Zay-ES-Net release 1.4.1
Small bug fix release:
- Refixed the HostedEntityData.getStringInfo() to send back a -1 if the ID doesn't
exist so that the client side has the proper information to handle it as a
non-cacheable miss. (Previous fix still threw NPEs.)