Skip to content

Commit 7388c80

Browse files
authored
Merge pull request #861 from bosch-io/feature/1.4.0-release-notes
Add 1.4.0 release notes.
2 parents 5b6e8d0 + 4d29e10 commit 7388c80

File tree

3 files changed

+146
-0
lines changed

3 files changed

+146
-0
lines changed

documentation/src/main/resources/_data/sidebars/ditto_sidebar.yml

+3
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ entries:
2323
- title: Release Notes
2424
output: web
2525
folderitems:
26+
- title: 1.4.0
27+
url: /release_notes_140.html
28+
output: web
2629
- title: 1.3.0
2730
url: /release_notes_130.html
2831
output: web
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
title: "Announcing Eclipse Ditto Release 1.4.0"
3+
published: true
4+
permalink: 2020-09-30-release-announcement-140.html
5+
layout: post
6+
author: yufei_cai
7+
tags: [blog]
8+
hide_sidebar: true
9+
sidebar: false
10+
toc: false
11+
---
12+
13+
Today, the Ditto team is happy to announce the next feature update of Ditto `1.x`: **Eclipse Ditto 1.4.0**
14+
15+
1.4.0 focuses on:
16+
17+
* Declaration of acknowledgement labels unique to each subscriber
18+
19+
Please have a look at the [1.4.0 release notes](release_notes_140.html) for a more detailed information on the release.
20+
21+
Also, some bugs were fixed which are not backported to Ditto 1.3.0 - it is recommended to update to Ditto 1.4.0 right
22+
away and skip 1.3.0.
23+
24+
25+
## Artifacts
26+
27+
The new Java artifacts have been published at the [Eclipse Maven repository](https://repo.eclipse.org/content/repositories/ditto/)
28+
as well as [Maven central](https://repo1.maven.org/maven2/org/eclipse/ditto/).
29+
30+
Also the [Ditto Java client](client-sdk-java.html)'s artifacts were published to Maven central.
31+
32+
The Docker images have been pushed to Docker Hub:
33+
* [eclipse/ditto-policies](https://hub.docker.com/r/eclipse/ditto-policies/)
34+
* [eclipse/ditto-things](https://hub.docker.com/r/eclipse/ditto-things/)
35+
* [eclipse/ditto-things-search](https://hub.docker.com/r/eclipse/ditto-things-search/)
36+
* [eclipse/ditto-gateway](https://hub.docker.com/r/eclipse/ditto-gateway/)
37+
* [eclipse/ditto-connectivity](https://hub.docker.com/r/eclipse/ditto-connectivity/)
38+
* [eclipse/ditto-concierge](https://hub.docker.com/r/eclipse/ditto-concierge/)
39+
40+
41+
## Kubernetes ready: Helm chart
42+
43+
In order to run Eclipse Ditto in a Kubernetes environment, best rely on the official
44+
[Helm chart](https://hub.helm.sh/charts/eclipse-iot/ditto) and deploy Ditto via the Helm package manager.
45+
46+
47+
<br/>
48+
<br/>
49+
{% include image.html file="ditto.svg" alt="Ditto" max-width=500 %}
50+
--<br/>
51+
The Eclipse Ditto team
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
---
2+
title: Release notes 1.4.0
3+
tags: [release_notes]
4+
published: true
5+
keywords: release notes, announcements, changelog
6+
summary: "Version 1.4.0 of Eclipse Ditto, released on 28.10.2020"
7+
permalink: release_notes_140.html
8+
---
9+
10+
Ditto **1.4.0** is API and [binary compatible](https://github.com/eclipse/ditto/blob/master/documentation/src/main/resources/architecture/DADR-0005-semantic-versioning.md)
11+
to prior Eclipse Ditto 1.x versions.
12+
13+
## Changelog
14+
15+
Compared to the latest release [1.3.0](release_notes_130.html), the following changes, new features and
16+
bugfixes were added.
17+
18+
19+
### Changes
20+
21+
#### [Status codes of live responses are no longer interpreted for acknowledgement requests](https://github.com/eclipse/ditto/pull/833)
22+
23+
Senders of live responses may freely choose the status code, since it no longer affects the technical settlement and redelivery of the corresponding live commands.
24+
25+
#### [The header response-required is always set to false for responses and events](https://github.com/eclipse/ditto/pull/850)
26+
27+
Ditto sets the header `response-required` to `false` for signals that do not anticipate any responses,
28+
so that the header has a consistent meaning regardless of signal type.
29+
30+
#### [OCSP is optional for connections](https://github.com/eclipse/ditto/pull/854)
31+
32+
Ditto will establish a connection even if the broker has a revoked certificate according to OCSP.
33+
Failed revocation checks will generate warnings in the connection log.
34+
This is to guard against unavailability of OCSP servers.
35+
36+
#### [Placeholder topic:entityId renamed to topic:entityName](https://github.com/eclipse/ditto/pull/859)
37+
38+
The placeholder `topic:entityId` was not named correctly. It was resolved with the
39+
name of an entity and not the complete ID. Therefore a new placeholder
40+
`topic:entityName` is introduced which reflects correctly what it means.
41+
42+
### New features
43+
44+
#### [Acknowledgement label declaration](https://github.com/eclipse/ditto/issues/792)
45+
46+
Each subscriber of Ditto signals by Websocket or other connections is required to declare the labels of acknowledgements
47+
it may send. The labels should be unique to the subscriber. Labels of acknowledgements sent via a connection source or
48+
issued by a connection target must be prefixed by the connection ID followed by a colon. This is to prevent racing in
49+
fulfillment of acknowledgement requests and to detect misconfiguration early.
50+
51+
Acknowledgement label declaration is available in [Ditto java client](https://github.com/eclipse/ditto-clients/pull/98).
52+
53+
### Bugfixes
54+
55+
Several bugs in Ditto 1.3.0 were fixed for 1.4.0.<br/>
56+
This is a complete list of the
57+
[merged pull requests](https://github.com/eclipse/ditto/pulls?q=is%3Apr+milestone%3A1.4.0), including the fixed bugs.<br/>
58+
Here as well for the Ditto Java Client: [merged pull requests](https://github.com/eclipse/ditto-clients/pulls?q=is%3Apr+milestone%3A1.4.0)
59+
60+
#### [Thread-safe loggers added](https://github.com/eclipse/ditto/issues/773)
61+
62+
Concurrency issues in Ditto loggers and logging adapters are addressed by introducing thread-safe variants.
63+
64+
#### [Search via SSE enabled](https://github.com/eclipse/ditto/issues/822)
65+
66+
Search via SSE was disabled due to incorrect initialization. It is enabled again.
67+
68+
#### [Memory consumption of outgoing AMQP connections limited](https://github.com/eclipse/ditto/pull/853)
69+
70+
AMQP 1.0 connections to a slow broker could accumulate indefinitely messages yet to be published.
71+
Now only a fixed number of messages are retained.
72+
73+
#### [Java client: Message ordering fixed](https://github.com/eclipse/ditto-clients/pull/97)
74+
75+
There was a bug in Ditto Java client that may cause messages to be handled in a different order
76+
than when they are received. It made some search results look empty when they are not.
77+
78+
## Migration notes
79+
80+
### Acknowledgement labels need to be declared and unique
81+
82+
- Websocket connections need to declare the labels of any acknowledgments they may send.
83+
The acknowledgement labels should be declared as comma-separated list in the query parameter `declared-acks`.
84+
Declared acknowledgement labels should be unique to the Websocket connection. Declaring a duplicate label
85+
causes the Websocket connection to close after an error in Ditto protocol.
86+
87+
- AMQP and MQTT connection sources need to declare the labels of any acknowledgement they may send as a JSON array
88+
in the JSON field `declaredAcks`. The acknowledgement labels should be prefixed by the connection ID and a colon.
89+
90+
- Connection targets of all protocols need to prefix their issued acknowledgements by the connection ID and a colon.
91+
92+
Details are in the [documentation](basic-acknowledgements.html#issuing-acknowledgements).

0 commit comments

Comments
 (0)