Skip to content

Commit 2698510

Browse files
authored
Merge pull request #783 from bosch-io/doc/release-notes-120
added Ditto 1.2.0 release notes
2 parents 5ca982a + 31f07ec commit 2698510

File tree

4 files changed

+92
-15
lines changed

4 files changed

+92
-15
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.2.0
27+
url: /release_notes_120.html
28+
output: web
2629
- title: 1.1.5
2730
url: /release_notes_115.html
2831
output: web

documentation/src/main/resources/pages/ditto/basic-acknowledgements.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ permalink: basic-acknowledgements.html
66
---
77

88
Acknowledgements are a concept in Ditto used to indicate that a
9-
[supported signal](#supported-signal-types--supportedsignaltypes) was successfully received or processed by either an
9+
[supported signal](#supported-signal-types) was successfully received or processed by either an
1010
internal Ditto functionality or an external subscriber of that signal.
1111

1212
Acknowledgements can be seen as (potentially multiple) responses to a single signal like for example a twin command.
13-
This means that Ditto collects all the [requested acknowledgements](#requesting-acknowledgements) until the signal is
13+
This means that Ditto collects all the [requested acknowledgements](#requesting-acks) until the signal is
1414
successfully processed within a specified timeout interval.
1515

1616
## Usage scenario examples
@@ -58,7 +58,7 @@ If the subscriber is in charge of handling a requested acknowledgement it
5858

5959
## Acknowledgements (ACKs)
6060
A single acknowledgement contains the following information:
61-
* Acknowledgement label (one of the requested labels of the [ack requests](#acknowledgement-requests))
61+
* Acknowledgement label (one of the requested labels of the [ack requests](#requesting-acks))
6262
* Header fields
6363
* mandatory: **correlation-id** the same correlation ID as the one of the signal which requested the acknowledgement
6464
* optional: additional header fields
@@ -282,19 +282,19 @@ acknowledgement, and `4xx` for a non-successful one) together with additional de
282282

283283
### Assure QoS until persisted in Ditto - twin-persisted
284284
In order to ensure that a [create/modify command](protocol-specification-things-create-or-modify.html) resulted in a
285-
successful update of twin in Ditto's managed database, [request the acknowledgement](#requesting-acknowledgements) for
285+
successful update of twin in Ditto's managed database, [request the acknowledgement](#requesting-acks) for
286286
the [built-in "twin-persisted"](#built-in-acknowledgement-labels) acknowledgement label.
287287

288288
### Assure QoS until processing of a live command/message by a subscriber - live-response
289289
In order to ensure that a live command or live message is processed by a subscriber,
290-
[request the acknowledgement](#requesting-acknowledgements) for
290+
[request the acknowledgement](#requesting-acks) for
291291
the [built-in "live-response"](#built-in-acknowledgement-labels) acknowledgement label.
292292
This acknowledgement request is fulfilled when the subscriber sends a live response or message response.
293293

294294
### Assure QoS until processing of a twin event or live command/message by subscribers - custom label
295295
In order to ensure that a [create/modify command](protocol-specification-things-create-or-modify.html) resulted in an
296296
event which was consumed by an application integrating with Ditto, or that a live command or live message is consumed
297-
without any live or message response, [request the acknowledgement](#requesting-acknowledgements) for a
297+
without any live or message response, [request the acknowledgement](#requesting-acks) for a
298298
[custom acknowledgement label](#custom-acknowledgement-labels).
299299

300300
## Interaction between headers

documentation/src/main/resources/pages/ditto/basic-connections.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ See [Basic Authentication](basic-auth.html#authorization-context-in-devops-comma
125125
#### Source acknowledgement requests
126126

127127
A source can configure, that for each incoming message additional
128-
[acknowledgement requests](basic-acknowledgements.html#acknowledgement-requests) are added.
128+
[acknowledgement requests](basic-acknowledgements.html#requesting-acks) are added.
129129

130130
That is desirable whenever incoming messages should be processed with a higher "quality of service" than the default,
131131
which is "at most once" (or QoS 0).
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,103 @@
11
---
22
title: Release notes 1.2.0
33
tags: [release_notes]
4-
published: false
4+
published: true
55
keywords: release notes, announcements, changelog
66
summary: "Version 1.2.0 of Eclipse Ditto, released on 31.08.2020"
77
permalink: release_notes_120.html
88
---
99

10+
The second minor (feature adding) release of Eclipse Ditto 1 is here: **1.2.0**.
11+
12+
It is API and [binary compatible](https://github.com/eclipse/ditto/blob/master/documentation/src/main/resources/architecture/DADR-0005-semantic-versioning.md)
13+
to Eclipse Ditto 1.0.0 and 1.1.0.
14+
1015
## Changelog
1116

17+
Compared to the latest minor release [1.1.0](release_notes_110.html), the following changes, new features and
18+
bugfixes were added.
19+
20+
The main change of Ditto 1.2.0 is the now full support for QoS 1 ("at least once") message processing.
21+
1222
### Changes
1323

14-
### Bugfixes
24+
#### [Update Docker base image to OpenJ9 0.21.0](https://github.com/eclipse/ditto/pull/743)
1525

16-
## Migration notes
26+
Updated to running the Ditto Docker containers with the latest OpenJ9 0.21.0 (with OpenJDK 11).
1727

18-
### rename config keys containing `blacklist` to `blocklist`:
19-
* in `gateway.conf`: `ditto.gateway.http.redirect-to-https-blocklist-pattern`
20-
* in `ditto-cluster.conf`: `ditto.cluster.cluster-status-roles-blocklist`
21-
* in `ditto-protocol.conf`: `ditto.protocol.blocklist`
28+
#### Added config key for setting the max pool size for connections
2229

23-
### added config key for setting the max pool size for connections
2430
The pool is used for mapping inbound and outbound messages in the connectivity service. It is configured
2531
per connection in the attribute `processorPoolSize`.
2632

2733
To provide a meaningful max per-connection pool size, you can now configure a service-wide maximum
2834
in the connectivity service using the key `ditto.connectivity.mapping.max-pool-size` (or its corresponding
2935
environment variable `CONNECTIVITY_MESSAGE_MAPPING_MAX_POOL_SIZE`).
36+
37+
38+
### New features
39+
40+
#### [`fn:filter` function for connectivity header mapping](https://github.com/eclipse/ditto/pull/674)
41+
42+
In connection [header mappings](connectivity-header-mapping.html) as part of the placeholders, the new
43+
[`fn:filter`](basic-placeholders.html#function-library) function may be used in order to remove the result of the
44+
previous expression in the function pipeline unless the condition specified by the parameters is satisfied.
45+
46+
#### [Whoami HTTP resource](https://github.com/eclipse/ditto/pull/687)
47+
48+
The new HTTP `GET` resource `/whoami` may be called in order to find out which authorization subjects were resolved in
49+
the HTTP call's authentication. This can be e.g. useful to find out the used JWT subject which should be added to
50+
[policies](basic-policy.html#who-can-be-addressed).
51+
52+
#### [Support using client certificate based authentication in HTTP push connections](https://github.com/eclipse/ditto/pull/695)
53+
54+
Connections of type [HTTP push](connectivity-protocol-bindings-http.html) can now, additionally to username/password
55+
based authentication, make use of
56+
[client certificate based authentication](connectivity-protocol-bindings-http.html#client-certificate-authentication).
57+
58+
#### [Automatic end-2-end acknowledgements handling for managed connections](https://github.com/eclipse/ditto/issues/661)
59+
60+
Acknowledgements can now be configured to be requested for messages consumed by connection
61+
[sources (acknowledgement requests)](basic-connections.html#source-acknowledgement-requests) and can automatically be
62+
issued by targets to automatically [issue acknowledgements](basic-connections.html#target-issued-acknowledgement-label)
63+
for all published twin events, live commands and live messages that request them.
64+
65+
#### [End-2-end acknowledgements support for "live" messages/commands](https://github.com/eclipse/ditto/issues/757)
66+
67+
Acknowledgements for [live messages/commands](basic-acknowledgements.html#assure-qos-until-processing-of-a-live-commandmessage-by-a-subscriber---live-response)
68+
are now supported as well. Both requesting and issuing them, e.g. in order to acknowledge that a message was
69+
successfully received without directly responding to it.
70+
71+
#### [Addition of `_created` date to things](https://github.com/eclipse/ditto/issues/749)
72+
73+
Whenever a [thing](basic-thing.html) is now created, a JSON field `"_created"` is now added containing the creation
74+
date. This field can be selected via [fields selection](httpapi-concepts.html#with-field-selector), as the already
75+
existing `"_modified"` field can also be. The created date can also be used as part of
76+
[search RQL queries](basic-rql.html).
77+
78+
#### [Support for adding `_metadata` to things](https://github.com/eclipse/ditto/issues/680)
79+
80+
On modifying API calls to a [thing](basic-thing.html), additional metadata can now be passed with the header field
81+
`"put-header"`. Documentation for this feature is still missing, but will be added soon after the 1.2.0 release.
82+
83+
### Bugfixes
84+
85+
Several bugs in Ditto 1.1.x were fixed for 1.2.0.<br/>
86+
This is a complete list of the
87+
[merged pull requests](https://github.com/eclipse/ditto/pulls?q=is%3Apr+milestone%3A1.2.0), including the fixed bugs.
88+
89+
#### [Connectivity service does not consume message after reconnect to AMQP (0.9.1)](https://github.com/eclipse/ditto/issues/770)
90+
91+
Connections via AMQP 0.9.1 did not correctly resume message consumption after the broker was e.g. restarted.
92+
93+
94+
## Migration notes
95+
96+
### Renamed config keys containing `blacklist` to `blocklist`
97+
98+
* in `gateway.conf`: `ditto.gateway.http.redirect-to-https-blocklist-pattern`
99+
* in `ditto-cluster.conf`: `ditto.cluster.cluster-status-roles-blocklist`
100+
* in `ditto-protocol.conf`: `ditto.protocol.blocklist`
101+
102+
If you configured any of the `blocklist` entries with Ditto < 1.2.0, you'll have to adjust your configuration
103+
accordingly.

0 commit comments

Comments
 (0)