This first milestone of the “1.0.0” release provides a preview of what to expect in the next release.
Changes
Add HiveMQ MQTT client as an alternative for MQTT integration
Due to the problems described in #450 we decided to add the HiveMQ MQTT Client as an alternative for the connection of Ditto to MQTT brokers. Once it has proven to be working and stable in production, it will replace the previous client (Alpakka/Paho).
Scalable event publishing
This patch improves horizontal scalability of Ditto’s event publishing mechanism. Find a more detailed description of this change in the pull request.
Typed entity IDs
This change introduces validated Java representations for entity IDs.
Introduce architectural decision records (ADR)
We want to keep track of architectural decisions and decided to use the format of ADRs for this purpose.
Relax uri restrictions
With this change we allow more characters in uris.
Background cleanup for stale journal entries and snapshots
This change introduces a asynchronous background deletion approach which replaces the current approach.
New features
Initial contribution of Java client SDK
Contribution was extracted from former commercial-only client - all references to Bosch were removed. Consists of full working, OSGi capable “ditto-client” artifact. More information can be found in our SDK documentation.
Configurable authorization servers
Eclipse Ditto now supports all OAuth 2.0 providers which implement OpenID Connect out-of-the-box. See this blog post for more details.
Fine grained access for connections
With this change it is possible to restrict access to connections on any level via a policy.
Reconnecting feature for created connections
When creating a connection, it will also contain the desired status of the connection.
Bugfixes
Various smaller bugfixes
This is a complete list of the merged pull requests.