Mendix Release 9.23 – Make it Smart[er] and Faster!
Have you also noticed it? We are on fire with every month’s jam-packed releases, and this month is no different! In Mendix 9.23 you can build super smart apps with our Machine Learning Kit (ML Kit) beta. On top of that, you can build apps faster with new, easy-to-use properties, a smaller installer, improved internationalization, faster client, and logic productivity boosters. There are also new capabilities for Data Grid 2, support for Google Tag manager, and improvements to our Developer Portal, Private cloud, Feedback module, and Epics. Ready to dive into the details?
ML Kit release beta
In 2023, and with the rise of ChatGPT, everyone (even your grandma!) is talking about how Artificial Intelligence (AI) is changing the world. While low-code is revolutionizing “how” applications are built, AI indeed is revolutionizing “what” kind of applications can be built. With this release, a new Mendix platform capability called the Mendix ML Kit, is releasing in public beta to enable low-code Machine Learning (ML) model integration in Mendix apps.
Prior to the ML Kit, Mendix was enabling the integration of AI/ML models with Mendix apps using either rest APIs, or in some use cases, by embedding the AI/ML model into a Mendix app (a better solution). ML Kit allows Mendix developers to deploy an ML model—built using common ML framework and language—into Mendix Studio Pro run-time in a low-code way. The ML Kit enables faster time-to-market, easier integration, superior performance, with lower effort and cost to integrate ML models into Mendix apps. You can read more about how to use the ML Kit in the Mendix documentation.
Generic Studio Pro improvements
New Properties interface (public beta)
To improve the overall development experience we have been working on improving the Properties pane with a complete new look and feel. When you enable the new properties, you will get an overhauled experience when editing your properties from the pane. This will give you a good overview of what is going on while making it significantly easier to make changes. You will be able to switch between properties and styling, so that you immediately see the properties you need to change. It will also be a lot clearer to compare settings between different items in Studio Pro. Try out the preview of the new Properties pane now by enabling it in the preferences under the New Features tab!
We updated how we handle internationalization, so that it is now easier to create multilingual apps. Previously, we would always have captions in English and Dutch. Now, we only initialize the active language. This makes it always clear which texts have to be translated, and which texts have been generated when the app was created. This more consistent experience will make working with different languages a lot easier.
We’ve optimized our installer and were able to remove some of the legacy functionality which means that we were able to reduce the size of the installer by more than 20%, going from 570 MB to less than 450 MB! This makes Studio Pro faster to download and should save some precious disk space.
Building better UI
Data grid 2: Filtering over association and auto-refresh
Via the dropdown filter you could already filter on enumeration or on a predefined set of values. With this release you can now also filter over associations as well! In the column of your data grid you can configure the settings and then the dropdown filter widget will automatically show the filters. You can use it for single references and for reference sets. Happy filtering!
A small but useful feature, you can now configure an auto refresh time for your grid to automatically refresh every x-seconds. This will allow you to automatically see updates if the data in the backend has changed.
Download the latest version of the Data Widgets module to enjoy these feature.
Google Tag/Analytics support
After July 1st, Google will remove support for their Google Analytics API V3 and move to V4. Because of this, our current Google Analytics, which is based on V3, will not work anymore. In its place, we are happy to introduce the Google Tag Manager widget! This widget can be used for Google Analytics and more. It’s very easy to get started. Simply add the widget to your layout, configure the API key and you are good to go. If you want more flexibility and custom events, enable the advanced mode to fully customize the behavior of the widget.
Or you can use the Google Tag activity for even more flexibility.
Improved client performance with Non-Persistent Entities (NPE)
We always strive to optimize our platform to be as fast as possible. In this regard we have identified an opportunity to make the web client faster when handling non-persistent entities (NPEs). In the past, the client had to fetch a unique identifier from the runtime to allow NPEs to be passed seamlessly between client and runtime. Now, NPEs can be created entirely client-side as long as they have no virtual attributes or create event handlers. This means fewer network requests and faster apps!
Design mode for building blocks and snippets
We are continuously improving design mode to make it easier to see what you are building. In this release all building blocks and snippets can now be shown in design mode. With this addition all UI document can now be edited in design mode! If you like it just much as we do, don’t forget to set it as default via Edit → Preferences → Work Environment.
Copy and paste in workflow editor
Increase workflow development speed by using copy and paste for workflow activities in the workflow editor. User tasks, Call microflow, and all other activities can now be copied into the same or other workflows.
Lock and unlock: The emergency button for workflows
Microflow activity Lock Workflow and Unlock Workflow allow a developer to add a workflow management capability to the application that will lock the workflow so no new workflow instances can be created. There is also the option to pause already running workflow instances. Adding a function like this to the application might be useful in case the process contains an error and has to be fixed before new processes can be initiated or running processes can continue. The Lock Workflow activity allows you to do this at runtime. When unlocking a workflow and unlocking the instances, they go back to their previous states.
Build your logic even faster with better return variables
ReturnValueNameto something meaningful.
ReturnValueName every time you use your action.
Improved MX Feedback Module
Lately we’ve reworked and introduced new improvements in the Feedback Module (the new Feedback Widget). Based on your feedback, we’ve improved the feedback management flow and made it easier for developers to understand what can be improved.
End users can easily submit feedback about your app including screenshots. Screenshots can be annotated using the freehand drawing tool included. Additional information such as the user’s username, user roles, active form, browser, and screen resolution is also attached.
An overview of recent adjustments in the module:
- Adding annotations to screenshots to point out the improvement
- Upload screenshots to make clear what needs to be adjusted
- Atlas styling is improved
- New Feedback module will allow user to integrate it directly into projects
To make use of the Feedback Module, you need to visit the MX Marketplace and download the module. You can add the widget into the desired page in Studio Pro and deploy the app.
The new module will help you to capture your feedback with ease
You can find more details here about the feedback module configuration and usage within your app.
Developer Portal updates
You might have noticed we have changed the look and feel of the Developer Portal a bit. For starters, most of it is now full width, scalable over many more devices and screen resolutions, and (spoiler alert!) dark-mode ready.
We brought about some UX improvements – for instance, you can now see whether your app is free or licensed, and which cloud it’s deployed on right there on the My Apps page.
We have also made inviting people to your app significantly easier:
There was also a ton of under-the-hood changes, but we won’t bother you with those. Suffice it to say, this was a pretty big release (kudos to everyone who helped make it happen!)
Epics – Improved searching
You asked – we delivered! Now you can search by not just by story title, but also by story ID, tags, epic name, assignee (or unassigned stories), plus the story status on the Planning page if you’re using scrum.
Security Contact in Control Center
Via Control Center, it is now possible to provide a security contact for your organization, who will be informed if there are security-related issues.
Mendix for Private Cloud
We have improved the validation message for the internal name in the environment creation flow:
Also, there is a new info section on top of the Environments Overview page which will be used to improve the communication about upcoming features and deprecations in the Portal. If nothing needs to be communicated, the section will be hidden:
Pay attention to the new feature to lock or unlock the deployment package in the environment Overview page. Any existing deployment packages will remain in an unlocked state. New deployment packages deployed in the environment will be locked by default:
We have added the Package ID field to display the ID of a deployment package in the deployment package details:
When using Mendix Operator version 2.10.0, it is now possible to load MxApp constants and custom runtime settings from the Kubernetes CSI Secrets Store. This allows you to store configuration in a secure credential storage system (such as Hashicorp Vault or AWS Secrets Manager) instead of the Developer Portal and Kubernetes secrets. Here are the example app stores
MyFirstModule.MyExternalConstant on AWS Secret Manager:
And to have more control in Secret Storages, we have added a notification on top of the Model Options and Runtime Settings page to indicate whether CSI Secrets Storage is enabled for a namespace.
Finally, we have removed the limit of eight characters for the MxAdmin password. You should set the password based on the policy set in Studio Pro.
We have updated components to use the latest dependency versions, in order to improve security score ratings for all container images.
We have switched from UBI 8 Minimal base images to UBI 8 Micro to offer a minimized attach surface to your Mendix apps. For further information, read this article.
For password-less app environments with automatic rotation, no app restart is needed. Now we support AWS IAM authentication for RDS Postgres databases besides the already supported AWS S3. To learn more about this feature, check out this AWS example.
Mendix for Amazon EKS
As part of our strategic partnership with AWS, we have added a way for you to streamline the deployment of your apps in your AWS account by automatically provisioning a private cloud environment, based on Amazon Elastic Kubernetes Service (EKS). By using the Mendix for Amazon EKS Reference Deployment, you can deploy your apps in the AWS cloud in a simplified, automated way. For more information, check out our blog post.
For more details please check out our release notes!
Build an AWS Connector
For this month we have focussed on helping you out with creating your own connector. On Mendix docs there is a new page available that explains you all the details on how you can develop your own AWS Connector. From picking the right services to setting up documentation, this how-to will give you a step-by-step guidance based on the Amazon Polly Service.
Want to get started? Here is the link to the docs!
We’re also eager to learn about how you are (not) using the AWS connectors from our Marketplace. We’ve created a max 15 min survey that you can fill out here!