# 7.1.0 M2

You can consume all the Activiti artifacts for this release from Maven Central:

*Activiti Cloud:*

```markup
<dependencyManagement>
   <dependencies>
     <dependency>
       <groupId>org.activiti.cloud.dependencies</groupId>
       <artifactId>activiti-cloud-dependencies</artifactId>
       <version>7.1.0.M2</version>
       <scope>import</scope>
       <type>pom</type>
     </dependency>
   </dependencies>
 </dependencyManagement>
```

*Activiti Core*

```markup
<dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.activiti.dependencies</groupId>
        <artifactId>activiti-dependencies</artifactId>
        <version>7.1.0.M2</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
    </dependencies>
  </dependencyManagement>
```

In the 7.1.0.M2 release you will find the following [main fixes & features](https://github.com/Activiti/Activiti/milestone/19?closed=1):

* Added support for bpmn embedded sub-processes in the Activiti Modeling Application and Activiti Cloud
* Process diagram available from query service -> `GET /query/admin/v1/process-instances/{processInstanceId}/diagram`
* Variable type validation at modeling time (default value is validated against type).
* Added support for PROCESS\_DEPLOYED and SIGNAL\_RECEIVED events in notification service
* Removal of RabbitMQ binder

You can also deploy our Example HELM charts using your favorite cloud platform (i.e. AWS, GCP, Azure...) or on-premise Kubernetes installation by following our [Getting Started Guide](https://activiti.gitbook.io/activiti-7-developers-guide/getting-started/getting-started-activiti-cloud)

### Known issues / Changes from 7.0.x

#### RabbitMQ binder

RabbitMQ binder has been removed as dependency of Activiti Cloud Starters (`activiti-cloud-starter-runtime-bundle`, `activiti-cloud-starter-query`, `activiti-cloud-starter-audit`, `activiti-cloud-starter-connector`).

Now, you need to add the dependency to the binder of your choice along side with related Activiti Cloud Starter. For instance, if you choose RabbitMQ binder you should add:

```markup
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-stream-rabbit</artifactId>
    </dependency>
```

This will solve the following exception that you may be experimenting after moving to 7.1.0.M2:

```
org.springframework.context.ApplicationContextException: Failed to start bean 'outputBindingLifecycle'; nested exception is java.lang.IllegalArgumentException: A default binder has been requested, but there is no binder available
```

#### Connector names

As the connector names can be used to create pods on kubernetes, these names need to be validated against [DNS-1123](https://docs.oracle.com/cd/E52668_01/E88884/html/index.html) conventions. The regex used in the kubernetes UI itself is "a-z0-9?"

#### Variable mappings

In release 7.1.0.M2 variable mappings have been updated to use names instead of UUIDs:

*Before 7.1.0.M2:*

```
"mappings": {
    "Task_1spvopd": {
        "inputs": {
          "movieNameUUID": {
            "type": "variable",
            "value": "movieToRankUUID"
          }
        },
        "outputs": {
            "movieDescUUID": {
                "type": "variable",
                "value": "movieDescriptionUUID"
            }
```

*From 7.1.0.M2:*

```
"mappings": {
    "Task_1spvopd": {
        "inputs": {
          "movieName": {
            "type": "variable",
            "value": "movieToRank"
          }
        },
        "outputs": {
            "movieDesc": {
                "type": "variable",
                "value": "movieDescription"
            }
        }
    }
}
```

If you're using variable mappings you need to replace process variable and connector input/output UUIDs by the respectif names. You can find names of process variables inside the extension file and names for connector inputs/outputs inside the connector definition file.

#### Helm Charts refactoring

All chart archives are moved to <https://github.com/Activiti/activiti-cloud-helm-charts>\
Full chart located at <https://github.com/Activiti/activiti-cloud-full-chart>

Now full chart has flat structure - application and infrastructure sub charts are removed.\
Common chart is a base chart for all charts and it is located at <https://github.com/Activiti/activiti-cloud-common-chart>.\
Charts for components located at component folders like:

* Runtime: <https://github.com/Activiti/example-runtime-bundle/tree/master/charts/runtime-bundle>
* Example cloud connector: <https://github.com/Activiti/example-cloud-connector/tree/master/charts/activiti-cloud-connector>
* Audit: <https://github.com/Activiti/activiti-cloud-audit/tree/master/charts/activiti-cloud-audit>
* Query: <https://github.com/Activiti/activiti-cloud-query/tree/master/charts/activiti-cloud-query>

In addition, some of the paths to services has changed:

| Service          | New Community URL for full example |
| ---------------- | ---------------------------------- |
| Audit            | /audit                             |
| Query            | /query                             |
| Runtime Bundle   | /rb                                |
| Notifications    | /notifications                     |
| Modeling Service | /modeling-service                  |
| Modeling UI      | /modeling                          |
| KeyCloak         | identity.{domain}/auth             |
| Gateway          | gateway.{domain}/                  |

�


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://activiti.gitbook.io/activiti-7-developers-guide/releases/7.1.0.m2.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
