<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Version 1.1.0 of Eclipse Ditto, released on 29.04.2020">
<meta name="keywords" content="release_notes,  release notes, announcements, changelog">
<title>  Release notes 1.1.0 • Eclipse Ditto • a digital twin framework</title>

<link rel="stylesheet" href="css/syntax.css">
<link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" crossorigin="anonymous">
<link rel="stylesheet" href="css/modern-business.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" crossorigin="anonymous">
<link rel="stylesheet" href="css/customstyles.css">
<link rel="stylesheet" href="css/boxshadowproperties.css">
<link rel="stylesheet" href="css/theme-ditto.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700">

<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/anchor-js/2.0.0/anchor.min.js" crossorigin="anonymous"></script>
<script src="js/toc.js"></script>
<script src="js/customscripts.js"></script>

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Organization",
  "url": "https://eclipse.org/ditto/",
  "logo": "https://eclipse.org/ditto/images/ditto.svg"
}
</script>

<link rel="icon" type="image/png" href="images/favicon-16x16.png" sizes="16x16">
<link rel="icon" type="image/png" href="images/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="images/favicon-96x96.png" sizes="96x96">

<link rel="alternate" type="application/rss+xml" title="Eclipse Ditto Blog" href="https://www.eclipse.org/ditto/feed.xml">

<!-- Eclipse Foundation cookie consent: -->
<link rel="stylesheet" type="text/css" href="//www.eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/vendor/cookieconsent/cookieconsent.min.css" />
<script src="//www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script>

    <script>
        $(document).ready(function() {
            $("#tg-sb-link").click(function() {
                $("#tg-sb-sidebar").toggle();
                $("#tg-sb-content").toggleClass('col-md-9');
                $("#tg-sb-content").toggleClass('col-md-12');
                $("#tg-sb-icon").toggleClass('fa-toggle-on');
                $("#tg-sb-icon").toggleClass('fa-toggle-off');
            });
        });
    </script>
</head>


<script>
    (function(w,d,s,l,i){
        w[l]=w[l]||[];
        w[l].push({'gtm.start':
            new Date().getTime(),event:'gtm.js'});
        var f=d.getElementsByTagName(s)[0],
            j=d.createElement(s),
            dl=l!='dataLayer'?'&l='+l:'';
        j.async=true;
        j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;
        f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','GTM-5WLCZXC');
</script>



<body>
<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container topnavlinks">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-ditto-home" href="index.html">&nbsp;<img src="images/ditto_allwhite_symbolonly.svg" class="ditto-navbar-symbol" alt="Home"> <img src="images/ditto_allwhite_textonly.svg" class="ditto-navbar-symbol-text" alt="Ditto"></a>
        </div>
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav navbar-right">
                <!-- toggle sidebar button -->
                <!--<li><a id="tg-sb-link" href="#"><i id="tg-sb-icon" class="fa fa-toggle-on"></i> Nav</a></li>-->
                <!-- entries without drop-downs appear here -->




                
                
                
                <li><a href="blog.html">Blog</a></li>
                
                
                
                <li><a href="intro-overview.html">Documentation</a></li>
                
                
                
                <li><a href="http-api-doc.html">HTTP API</a></li>
                
                
                
                <li><a href="https://ditto.eclipse.org" target="_blank">Sandbox</a></li>
                
                
                
                <li><a href="https://github.com/eclipse/ditto" target="_blank">GitHub</a></li>
                
                
                
                <li><a href="https://github.com/eclipse/ditto-examples" target="_blank">GitHub examples</a></li>
                
                
                
                <!-- entries with drop-downs appear here -->
                <!-- conditional logic to control which topnav appears for the audience defined in the configuration file.-->
                
                
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Links<b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        
                        
                        <li><a href="https://projects.eclipse.org/projects/iot.ditto" target="_blank">Eclipse Ditto Project</a></li>
                        
                        
                        
                        <li><a href="https://www.eclipse.org/forums/index.php/f/364/" target="_blank">Forum</a></li>
                        
                        
                        
                        <li><a href="https://ci.eclipse.org/ditto/" target="_blank">Jenkins</a></li>
                        
                        
                        
                        <li><a href="https://dev.eclipse.org/mhonarc/lists/ditto-dev/" target="_blank">Mailing list archives</a></li>
                        
                        
                        
                        <li><a href="https://gitter.im/eclipse/ditto" target="_blank">Gitter.im chat</a></li>
                        
                        
                    </ul>
                </li>
                
                
                
                <!--comment out this block if you want to hide search-->
                <li>
                    <!--start search-->
                    <div id="search-demo-container">
                        <input type="text" id="search-input" placeholder="search...">
                        <ul id="results-container"></ul>
                    </div>
                    <script src="//cdnjs.cloudflare.com/ajax/libs/simple-jekyll-search/0.0.9/jekyll-search.js" type="text/javascript"></script>
                    <script type="text/javascript">
                            SimpleJekyllSearch.init({
                                searchInput: document.getElementById('search-input'),
                                resultsContainer: document.getElementById('results-container'),
                                dataSource: 'search.json',
                                searchResultTemplate: '<li><a href="{url}" title="Release notes 1.1.0">{title}</a></li>',
                                noResultsText: 'No results found.',
                                limit: 10,
                                fuzzy: true,
                    })
                    </script>
                    <!--end search-->
                </li>
            </ul>
        </div>
    </div>
    <!-- /.container -->
</nav>

<!-- Page Content -->
<div class="container">
  <div id="main">
    <!-- Content Row -->
    <div class="row">
        
        
            <!-- Sidebar Column -->
            <div class="col-md-3" id="tg-sb-sidebar">
                

<ul id="mysidebar" class="nav">
  <li class="sidebarTitle">
    <label for="docVersion">Eclipse Ditto  version:</label>
    <div class="select-wrapper">
      <select id="docVersion" name="docVersion">
        
        <option value="">development</option>
        
        <option value="1.0">1.0</option>
        
        <option value="1.1">1.1</option>
        
      </select>
    </div>
    <div id="dev-warning">
      <div markdown="span" class="alert alert-warning" role="alert" style="font-size:0.6em"><i class="fa fa-warning"></i> <b>Important:</b> This documentation reflects the latest 'development'. You might want to choose a released version.</div>
    </div>
  </li>
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Introduction</a>
          <ul>
              
              
              
              <li><a href="intro-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="intro-digitaltwins.html">Digital twins</a></li>
              
              
              
              
              
              
              <li><a href="intro-hello-world.html">Hello world</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Release Notes</a>
          <ul>
              
              
              
              <li class="active"><a href="release_notes_110.html">1.1.0</a></li>
              
              
              
              
              
              
              <li><a href="release_notes_100.html">1.0.0</a></li>
              
              
              
              
              
              
              <li><a href="release_notes_090.html">0.9.0</a></li>
              
              
              
              
              
              
              <li><a href="release_notes_080.html">0.8.0</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Milestone releases</a>
                  <ul>
                      
                      
                      
                      <li><a href="release_notes_100-M2.html">1.0.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_100-M1a.html">1.0.0-M1a</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_090-M2.html">0.9.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_090-M1.html">0.9.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080-M3.html">0.8.0-M3</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080-M2.html">0.8.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080-M1.html">0.8.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_030-M2.html">0.3.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_030-M1.html">0.3.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_020-M1.html">0.2.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_010-M3.html">0.1.0-M3</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_010-M1.html">0.1.0-M1</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Installation</a>
          <ul>
              
              
              
              <li><a href="installation-building.html">Building Ditto</a></li>
              
              
              
              
              
              
              <li><a href="installation-running.html">Running Ditto</a></li>
              
              
              
              
              
              
              <li><a href="installation-operating.html">Operating Ditto</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Basic concepts</a>
          <ul>
              
              
              
              <li><a href="basic-overview.html">Overview</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Model entities</a>
                  <ul>
                      
                      
                      
                      <li><a href="basic-thing.html">Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-acl.html">Access Control List (ACL)</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-feature.html">Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-policy.html">Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-namespaces-and-names.html">Namespaces and Names</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="basic-auth.html">Authentication and Authorization</a></li>
              
              
              
              
              
              
              <li><a href="basic-messages.html">Messages</a></li>
              
              
              
              
              
              
              <li><a href="basic-signals.html">Signals</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Signal types</a>
                  <ul>
                      
                      
                      
                      <li><a href="basic-signals-command.html">Command</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-commandresponse.html">Command response</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-errorresponse.html">Error response</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-event.html">Event</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="basic-apis.html">APIs</a></li>
              
              
              
              
              
              
              <li><a href="basic-connections.html">Connections</a></li>
              
              
              
              
              
              
              <li><a href="basic-placeholders.html">Placeholders</a></li>
              
              
              
              
              
              
              <li><a href="basic-changenotifications.html">Change notifications</a></li>
              
              
              
              
              
              
              <li><a href="basic-rql.html">RQL expressions</a></li>
              
              
              
              
              
              
              <li><a href="basic-enrichment.html">Signal enrichment</a></li>
              
              
              
              
              
              
              <li><a href="basic-search.html">Search</a></li>
              
              
              
              
              
              
              <li><a href="basic-acknowledgements.html">Acknowledgements</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Architecture</a>
          <ul>
              
              
              
              <li><a href="architecture-overview.html">Overview</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Services</a>
                  <ul>
                      
                      
                      
                      <li><a href="architecture-services-policies.html">Policies</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-things.html">Things</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-things-search.html">Things-Search</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-connectivity.html">Connectivity</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-concierge.html">Concierge</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-gateway.html">Gateway</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>HTTP API</a>
          <ul>
              
              
              
              <li><a href="httpapi-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-concepts.html">Concepts</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-search.html">Search</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-messages.html">Messages</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-protocol-bindings-websocket.html">WebSocket protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-sse.html">Server sent events</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Connectivity API</a>
          <ul>
              
              
              
              <li><a href="connectivity-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-manage-connections.html">Manage connections</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-amqp091.html">AMQP 0.9.1 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-amqp10.html">AMQP 1.0 protocol binding</a></li>
              
              
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-mqtt5.html">MQTT 5 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-http.html">HTTP 1.1 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-kafka2.html">Kafka 2.x protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-mapping.html">Payload mapping</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-header-mapping.html">Header mapping</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-tls-certificates.html">TLS certificates</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Client SDK</a>
          <ul>
              
              
              
              <li><a href="client-sdk-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="client-sdk-java.html">Java</a></li>
              
              
              
              
              
              
              <li><a href="client-sdk-javascript.html">JavaScript</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Ditto Protocol</a>
          <ul>
              
              
              
              <li><a href="protocol-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="protocol-twinlive.html">Twin/live channel</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification.html">Specification</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification-topic.html">Protocol topic</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification-things.html">Things group</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ commands/events</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-specification-things-create-or-modify.html">Create/Modify</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-retrieve.html">Retrieve</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-delete.html">Delete</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-acks.html">Acknowledgements</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ search/messages</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-specification-things-search.html">Search</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-messages.html">Messages</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="protocol-specification-policies.html">Policies group</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ commands/events</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-specification-policies-create-or-modify.html">Create/Modify</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-policies-retrieve.html">Retrieve</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-policies-delete.html">Delete</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="protocol-bindings.html">Bindings</a></li>
              
              
              
              
              
              
              <li><a href="protocol-examples.html">Examples</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ Things examples</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-examples-creatething.html">Create a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletething.html">Delete a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifything.html">Modify a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievething.html">Retrieve a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievethings.html">Retrieve multiple Things</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifypolicyid.html">Modify the Policy ID of a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createattributes.html">Create Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteattributes.html">Delete Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyattributes.html">Modify Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveattributes.html">Retrieve Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createattribute.html">Create a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteattribute.html">Delete a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyattribute.html">Modify a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveattribute.html">Retrieve a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createthingdefinition.html">Create a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletethingdefinition.html">Delete a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifythingdefinition.html">Modify a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievethingdefinition.html">Retrieve a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createfeatures.html">Create Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletefeatures.html">Delete Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyfeatures.html">Modify Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievefeatures.html">Retrieve Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createfeature.html">Create a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletefeature.html">Delete a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyfeature.html">Modify a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievefeature.html">Retrieve a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createdefinition.html">Create Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletedefinition.html">Delete Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifydefinition.html">Modify Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievedefinition.html">Retrieve Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createproperties.html">Create Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteproperties.html">Delete Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyproperties.html">Modify Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveproperties.html">Retrieve Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createproperty.html">Create a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteproperty.html">Delete a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyproperty.html">Modify a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveproperty.html">Retrieve a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-errorresponses.html">Error responses</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ Policies examples</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-examples-policies-createpolicy.html">Create a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deletepolicy.html">Delete a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifypolicy.html">Modify a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievepolicy.html">Retrieve a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifypolicyentries.html">Modify entries</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievepolicyentries.html">Retrieve entries</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-createpolicyentry.html">Create a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deletepolicyentry.html">Delete a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifypolicyentry.html">Modify a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievepolicyentry.html">Retrieve a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifysubjects.html">Modify subjects</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievesubjects.html">Retrieve subjects</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-createsubject.html">Create a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deletesubject.html">Delete a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifysubject.html">Modify a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievesubject.html">Retrieve a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifyresources.html">Modify resources</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrieveresources.html">Retrieve resources</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-createresource.html">Create a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deleteresource.html">Delete a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifyresource.html">Modify a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrieveresource.html">Retrieve a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-errorresponses.html">Error responses</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="protocol-examples-search.html">→ Search examples</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
    <li><a href="sandbox.html">Sandbox</a></li>
    
  
  
  
    
    <li><a href="presentations.html">Presentations</a></li>
    
  
  
  
    
    <li><a href="glossary.html">Glossary</a></li>
    
  
  
  
    
    <li><a href="feedback.html">Feedback</a></li>
    
  
  
  
    
         <p class="external">
             <a href="#" id="collapseAll">Collapse All</a> | <a href="#" id="expandAll">Expand All</a>
         </p>
    
</ul>

<!-- this highlights the active parent class in the sidebar. this is critical so that the parent expands when you're viewing a page. This must appear below the sidebar code above. Otherwise, if placed inside customscripts.js, the script runs before the sidebar code runs and the class never gets inserted.-->
<script>$("li.active").parents('li').toggleClass("active");

$(function() {
  $("#dev-warning").hide();
  changeSelectedDocVersionDropdownSelection($("#docVersion")[0]);
  $("#docVersion").change(changeSelectedDocVersion);
});

function changeSelectedDocVersionDropdownSelection(element) {
  var pathName = window.location.pathname;

  var versionOptions = element.options;
  for (var i = 0; i < versionOptions.length; i++) {
    var versionValue = versionOptions[i].value;
    if ((versionValue !== "") && pathName.startsWith("/ditto/"+versionValue+"/")) {
      $("#docVersion").val(versionValue).change();
      return;
    }
  }
  // fallback: dev with "empty" version value:
  $("#docVersion").val("").change();
  $("#dev-warning").show();
}
function changeSelectedDocVersion() {
  var versionValue = $('#docVersion').val();
  var remainingPath = window.location.pathname.replace("/ditto/", "");
  var versionMatch = remainingPath.match("([0-9].[0.9])/(.*)");
  if (versionValue === "" && !versionMatch) {
    // do nothing, we're already on the correct "dev" version
  } else if (versionMatch && (versionValue === versionMatch[1])) {
    // do nothing, we're already on the correct version
  } else {
    if (versionValue === "" && versionMatch) {
      window.location.pathname = "ditto/" + versionMatch[2];
    } else if (versionValue === "") {
      window.location.pathname = "ditto/" + remainingPath;
    } else if (versionMatch) {
      window.location.pathname = "ditto/" + versionValue + "/" + versionMatch[2];
    } else {
      window.location.pathname = "ditto/" + versionValue + "/" + remainingPath;
    }
  }
}
</script>

            </div>
            
        

        <!-- Content Column -->
        <div class="col-md-9" id="tg-sb-content">
            <div class="post-header">
   <h1 class="post-title-main">Release notes 1.1.0</h1>
</div>



<div class="post-content">

   
    <div class="summary">Version 1.1.0 of Eclipse Ditto, released on 29.04.2020</div>
   

    
    
<!-- this handles the automatic toc. use ## for subheads to auto-generate the on-page minitoc. if you use html tags, you must supply an ID for the heading element in order for it to appear in the minitoc. -->
<script>
$( document ).ready(function() {
  // Handler for .ready() called.

$('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3,h4' });

/* this offset helps account for the space taken up by the floating toolbar. */
$('#toc').on('click', 'a', function() {
  var target = $(this.getAttribute('href'))
    , scroll_target = target.offset().top

  $(window).scrollTop(scroll_target - 10);
  return false
})
  
});
</script>

<div id="toc"></div>

    


    


    

  <p>The first minor (feature adding) release of Eclipse Ditto 1 is finally here: <strong>1.1.0</strong>.</p>

<p>It is API and <a href="https://github.com/eclipse/ditto/blob/master/documentation/src/main/resources/architecture/DADR-0005-semantic-versioning.md">binary compatible</a>
to Eclipse Ditto 1.0.0.</p>

<h2 id="whats-in-this-release">What’s in this release?</h2>

<h3 id="changelog">Changelog</h3>

<p>Compared to the latest release <a href="release_notes_100.html">1.0.0</a>, the following changes, new features and
bugfixes were added.</p>

<h4 id="changes">Changes</h4>

<h5 id="java-11-as-runtime-environment"><a href="https://github.com/eclipse/ditto/issues/308">Java 11 as runtime environment</a></h5>

<p>The default Java runtime for Ditto’s Docker containers was switched from Java 8 to Java 11 which should have some 
benefits in storing Strings in memory (this was already added in Java 9).</p>

<p>Language features of newer Java versions can now be used in the “services” part of Ditto, the Java APIs and models relevant 
for <a href="https://github.com/eclipse/ditto/blob/master/documentation/src/main/resources/architecture/DADR-0005-semantic-versioning.md">semantic versioning</a> 
are still compatible to Java 8.</p>

<h5 id="cbor-as-ditto-internal-serialization-provider"><a href="https://github.com/eclipse/ditto/pull/598">CBOR as Ditto internal serialization provider</a></h5>

<p>As a bachelor thesis, <a href="https://github.com/erikescher">Erik Escher</a> evaluated mechanisms to improve the serialization 
overhead done in Ditto clusters.</p>

<p>His findings using <a href="https://cbor.io">CBOR</a> as an alternative to plain JSON resulted an approximate 10% improvement on 
roundtrip times and throughput.
The Ditto team was happy to accept his pull request, again improving overall performance in Ditto.</p>

<h5 id="more-strict-content-type-parsing-for-http-request-payload"><a href="https://github.com/eclipse/ditto/pull/650">More strict Content-Type parsing for HTTP request payload</a></h5>

<p>In the past, Ditto did not evaluate the HTTP <code class="highlighter-rouge">Content-Type</code> header of HTTP requests sending along payload. As this 
can be a potential security issue (e.g. in scope of CORS requests), the <code class="highlighter-rouge">Content-Type</code> is now strictly enforced to
be of <code class="highlighter-rouge">application/json</code> wherever Ditto only accepts JSON request payload.</p>

<h4 id="new-features">New features</h4>

<h5 id="management-of-policies-via-ditto-protocol-and-in-java-client"><a href="https://github.com/eclipse/ditto/issues/554">Management of policies via Ditto Protocol and in Java client</a></h5>

<p>The <a href="basic-policy.html">policy</a> entities can now - in addition to their HTTP API - be managed via the 
<a href="protocol-specification-policies.html">Ditto Protocol</a>. That means also via 
<a href="httpapi-protocol-bindings-websocket.html">WebSocket</a> and <a href="basic-connections.html">connections</a> (e.g. AMQP, MQTT, ..).</p>

<p>APIs for <a href="client-sdk-java.html#manage-policies">policy management</a> were also added to the 
<a href="https://github.com/eclipse/ditto-clients/pull/46">Ditto Java Client</a>.</p>

<h5 id="searching-things-via-ditto-protocol-and-in-java-client"><a href="https://github.com/eclipse/ditto/issues/575">Searching things via Ditto Protocol and in Java client</a></h5>

<p>New <a href="protocol-specification-things-search.html">Ditto Protocol for search</a> was added in order to define a search query
via the Ditto Protocol and also get results via an asynchronous channel. As a result, searching for things is now also
possible via <a href="httpapi-protocol-bindings-websocket.html">WebSocket</a> and <a href="basic-connections.html">connections</a> 
(e.g. AMQP, MQTT, ..).</p>

<p>APIs for <a href="client-sdk-java.html#search-for-things">searching things</a> were also added to the 
<a href="https://github.com/eclipse/ditto-clients/pull/53">Ditto Java Client</a>.</p>

<h5 id="enriching-messages-and-events-before-publishing-to-external-subscribers"><a href="https://github.com/eclipse/ditto/issues/561">Enriching messages and events before publishing to external subscribers</a></h5>

<p>When subscribing <a href="basic-changenotifications.html">change notifications</a> or for messages to publish to external system or
deliver via <a href="httpapi-protocol-bindings-websocket.html">WebSocket</a> it is now possible to <a href="basic-enrichment.html">enrich</a> 
the payload with additional “extra fields” from the thing which was affected by the change.</p>

<p>This can be useful when e.g. only a sensor value of a device changes, but your application also needs to be aware of 
additional context of the affected thing (e.g. a location which does not change with each sensor update).</p>

<p>APIs for <a href="client-sdk-java.html#subscribe-to-enriched-change-notifications">enriching changes</a> were also added to the 
<a href="https://github.com/eclipse/ditto-clients/pull/43">Ditto Java Client</a>.</p>

<h5 id="establish-connections-to-mqtt-5-brokers"><a href="https://github.com/eclipse/ditto/issues/561">Establish connections to MQTT 5 brokers</a></h5>

<p>The Ditto community (namely <a href="https://github.com/w4tsn">Alexander Wellbrock (w4tsn)</a> from 
<a href="https://www.othermo.de">othermo GmbH</a>) contributed MQTT 5 support to Ditto’s connectivity capabilities.<br />
With that is is possible to also establish connections to MQTT 5 brokers and even apply 
<a href="connectivity-header-mapping.html">header mapping</a> and e.g. responses via MQTT 5’s <code class="highlighter-rouge">user properties</code> approach.</p>

<p>Thank you very much for this great contribution.</p>

<h5 id="end-2-end-acknowledgements"><a href="https://github.com/eclipse/ditto/issues/611">End-2-end acknowledgements</a></h5>

<p>Until now, messages consumed by Eclipse Ditto were processed without a guarantee. That is being addressed with this
first feature addition, the model and logic in order to request and emit <a href="basic-acknowledgements.html">acknowledgements</a>.</p>

<p>The follow-up issue <a href="https://github.com/eclipse/ditto/issues/661">#661</a> will automatically handle acknowledgements 
in Ditto managed connections, configured for connection sources and targets, providing QoS 1 (at least once) semantic
for message processing in Ditto via connections.</p>

<p>APIs for <a href="client-sdk-java.html#request-and-issue-acknowledgements">requesting and issuing acknowledgements</a> were also 
added to the <a href="https://github.com/eclipse/ditto-clients/pull/56">Ditto Java Client</a>.</p>

<h5 id="pre-authenticated-authentication-mechanism"><a href="https://github.com/eclipse/ditto/issues/560">Pre-authenticated authentication mechanism</a></h5>

<p>Officially added+<a href="installation-operating.html#pre-authentication">documented</a> support of how Ditto external 
authentication providers may be configured to authenticate users in Ditto by adding them as an HTTP reverse proxy in 
front of Ditto.</p>

<h4 id="deprecations">Deprecations</h4>

<h5 id="api-version-1-deprecation"><a href="https://github.com/eclipse/ditto/pull/608">API version 1 deprecation</a></h5>

<p>Now that Ditto has a full replacement for <a href="basic-acl.html">ACLs</a>, namely <a href="basic-policy.html">policies</a> which now can 
also be managed via the <a href="protocol-specification-policies.html">Ditto Protocol</a> and the 
<a href="client-sdk-java.html">Ditto Java client</a>, it is time to deprecate the APIs around the ACL mechanism.</p>

<p>Starting with Ditto 1.1.0, usage of the API in version <code class="highlighter-rouge">1</code> (e.g. contained in HTTP URLs as <code class="highlighter-rouge">/api/1/things...</code>) is 
deprecated.<br />
API version 1 and ACLs will very likely be removed in Ditto <code class="highlighter-rouge">2.0</code>.</p>

<p>So when you start using Ditto, please make sure to use API version <code class="highlighter-rouge">2</code> (using policies as 
<a href="basic-auth.html#authorization">authorization mechanism</a>) from the very beginning.</p>

<h4 id="bugfixes">Bugfixes</h4>

<p>Several bugs in Ditto 1.0.0 were fixed for 1.1.0.<br />
This is a complete list of the 
<a href="https://github.com/eclipse/ditto/pulls?q=is%3Apr+milestone%3A1.1.0">merged pull requests</a>, including the fixed bugs.</p>

<h3 id="migration-notes">Migration notes</h3>

<p>Do not apply when updating from Eclipse Ditto 1.0.0 to 1.1.0.</p>


    <div class="tags">
        
        <b>Tags: </b>
        
        
        
        <a href="tag_release_notes.html" class="btn btn-default navbar-btn cursorNorm" role="button">release_notes</a>
        
        
        
    </div>

</div>

<hr class="shaded"/>

<footer>
            <div class="row">
                <div class="col-lg-12 footer">
                    <div class="logo">
                        <a href="https://eclipse.org"><img src="images/eclipse_foundation_logo.svg" alt="Eclipse logo"/></a>
                    </div>
                    <p class="notice">
                        &copy;2020 Eclipse Ditto.
                         Site last generated: May 13, 2020 <br />
                    </p>
                    <div class="quickLinks">
                        <a href="https://www.eclipse.org/legal/privacy.php" target="_blank">
                            &gt; Privacy Policy
                        </a>
                        <a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank">
                            &gt; Terms of Use
                        </a>
                        <a href="https://www.eclipse.org/legal/copyright.php" target="_blank">
                            &gt; Copyright Agent
                        </a>
                        <a href="https://www.eclipse.org/legal" target="_blank">
                            &gt; Legal
                        </a>
                        <a href="https://www.eclipse.org/legal/epl-2.0/" target="_blank">
                            &gt; License
                        </a>
                        <a href="https://eclipse.org/security" target="_blank">
                            &gt; Report a Vulnerability
                        </a>
                    </div>
                </div>
            </div>
</footer>


        </div>
    <!-- /.row -->
</div>
<!-- /.container -->
</div>
<!-- /#main -->
    </div>

</body>
</html>
