8.2

Last update: Edit

8.2.2

Release date: October 15th, 2019

Download

Fix

  • We fixed an issue introduced in Studio Pro 8.2.0 where objects were not committed when executing the commit action in special cases related to one-to-one associations. This reverts a change made in 8.2.0. (Ticket 89712)

Known Issues

  • When you use the Extract sub-microflow or Extract sub-nanofow functionality, the contents of the extracted flow might be lost after exiting Studio Pro. As a workaround, open the extracted flow, make a small change (for example, change the position of an activity), then save manually. (Ticket 88764)
  • In native mobile apps, text box values are not stored until the keyboard is hidden or another input field is focused. As such, any logic that is fired directly after changing a text box value (for example, by clicking a button) does not receive the updated value.
  • When you have a conditionally visible widget and the object used for the conditional expression is deleted, this results in an error. (Tickets 88646, 88783, 89114, 89756, 90495, 90680)
  • MySQL 8.0 cannot be used with the default authentication plugin as of this moment. Mendix uses the open-source MariaDB driver to connect, which has not yet added support. We will include the updated driver as soon as it is released. To resolve this issue, you may consider using the previous default plugin until the driver has been updated.
  • The first deployment of an app project with a native mobile profile takes approximately one minute longer than usual, as the first deployment needs to build up a cache. On consecutive deployments, this time is reduced.

8.2.1

Release date: September 30th, 2019

Fix

  • We fixed an issue where the creation of a deployment package failed when the project contained a native navigation profile.

Known Issues

  • When you use the Extract sub-microflow or Extract sub-nanofow functionality, the contents of the extracted flow might be lost after exiting Studio Pro. As a workaround, open the extracted flow, make a small change (for example, change the position of an activity), then save manually. (Ticket 88764)
  • In native mobile apps, text box values are not stored until the keyboard is hidden or another input field is focused. As such, any logic that is fired directly after changing a text box value (for example, by clicking a button) does not receive the updated value.
  • MySQL 8.0 cannot be used with the default authentication plugin as of this moment. Mendix uses the open-source MariaDB driver to connect, which has not yet added support. We will include the updated driver as soon as it is released. To resolve this issue, you may consider using the previous default plugin until the driver has been updated.
  • The first deployment of an app project with a native mobile profile takes approximately one minute longer than usual, as the first deployment needs to build up a cache. On consecutive deployments, this time is reduced.
  • When you have a conditionally visible widget and the object used for the conditional expression is deleted, this results in an error. (Tickets 88646, 88783, 89114, 89756, 90495, 90680)

8.2.0

Release date: September 26th, 2019

New Features

Data Grid with Microflow Sorting & Paging Support

It is often very useful to use the data grid with a microflow (for example, to retrieve data from another system). However, in previous versions, there was a big pain point here: when using a microflow as data source, you did not have the option to do server-side sorting or paging. This was much-needed functionality for UX and performance. Good news! In this release, we have made it possible to do server side-sorting and paging when using a microflow as a data source in a data grid.

How does this work? Well, we used the approach of generating the model for you, so that it works out-of-the-box with a single click. You also have the flexibility to fully customize this if needed.

To make this possible, we introduced a new system entity for paging that contains information about the current page and sorting. When selecting a microflow, you will now be asked whether the controls should be generated.

This feature generates a data view around your data grid, creates the widgets and nanoflows, and adds the paging object as an input to your microflow. We nicely organized and named this, so your app will not be polluted. You are now ready to use these parameters for your integration (for example, when calling a REST service).

This approach is also fully flexible, so you have more control of the look and feel. For example, you can also move the paging controls below the grid or change the buttons.

To make everyone even happier, in the next release, we will also generate all of the search controls for you!

Constants in Page & Nanoflow Expressions

We know that you have been asking to use constants on pages, so we are happy to say that with this release, you can use constants in conditional visibility/editability, validation expressions, and nanoflows!

We are also aware that constants might contain sensitive data, such as authentication information. That is why constants are not available in the client by default. You need to mark each constant you want to use in the client via the Expose to client check box on the constant form.

Call Microflows from Nanoflows

Have you ever wondered if nanoflows could call microflows? Because with this release, nanoflows used in web apps or online hybrid apps can make these calls!

Just search for the Call a microflow activity in the Toolbox or drag a microflow onto the nanoflow editor, and you’re good to go.

Other New Features

  • In published REST services, it is now possible to have multi-part and form-data parameters.
  • We have made Mendix Assist even more powerful. It can now detect a missing sequence flow and suggest how you should create it.

Improvements

JavaScript Actions Improvements

Mendix developers deserve the best of the best. Therefore, we are bringing you the best version of JavaScript (so far) to JavaScript actions!

You can now use ES2018 features such as async/await and spread syntax in your JavaScript actions. These will keep working even in Internet Explorer!

Is that it? No. We are also giving you more options to organize your JavaScript code if it becomes complex:

  • You can place your helper code inside the newly introduced BEGIN EXTRA CODE section of a JavaScript action.
  • If you want to share such a helper, you can extract it to a separate file in the javascriptsource/{yourModule} directory and import it.

Don’t worry, none of these will increase the size of the bundle, because we now minify it when you deploy to production.

Other Improvements

  • We upgraded the jackson-databind libraries from 2.9.9 to 2.9.9.3 and the akka-actor and akka-stream libraries from 2.5.19 to 2.5.25. We also added the akka-stream-alpakka-xml library (version 1.1.1).
  • We added debug log messages for import mappings if you are importing invalid XML with the validation off.
  • You can now hide the bottom bar on layouts for native mobile.
  • The Delete option in the Edit menu now works properly for Project Explorer.
  • We updated the embedded JavaScript editor to the latest version of Monaco, which should be faster.
  • We improved the response of web services when an unexpected exception occurs. In that case, the message of what went wrong is still logged, but it is no longer returned to the client.
  • When using the expression editor’s autocomplete function, the best matching records are now displayed first.
  • You can now configure the condition value of a sequence flow from the Properties pane.
  • To make labels clearer, we added the word name after the labels for variable, object, and list-output variables.

Fixes

  • The compatibility level is now checked instead of the database version when connecting to SQL Server and Azure SQL databases. When starting Mendix against one of these servers, the existing or new database is verified for a compatibility level of at least 130, which is the equivalent of SQL Server 2016. This means connections to SQL Server 2014 and earlier are no longer allowed, as well as connections to SQL Server 2016 onward if the database compatibility level value is manually changed to 120 or below.
  • In native mobile apps, the back button text changes to Back in the case of longer page titles. This text is now translatable.
  • We improved the handling of one-to-one associations with Owner type Both. Now, more objects are marked as committed, and member states are set correctly. (Tickets 69877, 83548)
  • We fixed a rare exception that occurred when reverting the changes to a microflow.
  • We fixed an issue where retrieving large volumes of data from an OData endpoint threw an out-of-memory exception. (Ticket 86797)
  • We fixed an issue in published REST and OData services when using custom authentication and switching from security On to security Off where the authentication microflow was still triggered.
  • We fixed an issue where the connection was not closed property for Oracle streaming connections.
  • We fixed an issue where using XPath constraints with DateTime tokens on retrieve action in nanoflows did not work. (Ticket 85950)
  • When you specified conditional visibility on a data view, the hiding of this data view resulted in an error. This is now fixed.
  • When running a hybrid app or web app in a mobile browser on iOS 12.2, the keyboard did not appear when clicking an input field, and you had to click multiple times to get the keyboard. This is now fixed. (Tickets 82022, 82079, 82462, 85575, 86079, 86186)
  • When accessing the attribute or association of a grand-parent data view, a security error was erroneously reported. We fixed this for you.
  • We have reduced the flickering that occurs while loading data in native apps.
  • We have improved the UX of the Condition for visible/editable dialog boxes.
  • We fixed a bug that created an unnecessary session when reusing an anonymous session. (Tickets 77806, 77927, 81465, 81488)
  • We improved the spelling for a consistency error message in the data grid. (Ticket 86579).

Known Issues

  • Creation of a (versioned) deployment package using Studio Pro may fail when the app project contains a native navigation profile. Creation of deployment packages from the Mendix Developer Portal is not affected.
  • When you use the Extract sub-microflow or Extract sub-nanofow functionality, the contents of the extracted flow might be lost after exiting Studio Pro. As a workaround, open the extracted flow, make a small change (for example, change the position of an activity), then save manually. (Ticket 88764)
  • In native mobile apps, text box values are not stored until the keyboard is hidden or another input field is focused. As such, any logic that is fired directly after changing a text box value (for example, by clicking a button) does not receive the updated value.
  • MySQL 8.0 cannot be used with the default authentication plugin as of this moment. Mendix uses the open-source MariaDB driver to connect, which has not yet added support. We will include the updated driver as soon as it is released. To resolve this issue, you may consider using the previous default plugin until the driver has been updated.
  • The first deployment of an app project with a native mobile profile takes approximately one minute longer than usual, as the first deployment needs to build up a cache. On consecutive deployments, this time is reduced.
  • When you have a conditionally visible widget and the object used for the conditional expression is deleted, this results in an error. (Tickets 88646, 88783, 89114, 89756, 90495, 90680)