Mendix Release 9.15 – The Summer Checklist
Summertime brings so many good things with it – warm weather, vacations, lazy days, new improvements to the Mendix Platform… We’ve got a whole checklist of updates we’ve been tackling, from Studio Pro performance to native mobile, MxAssist, OData improvements, and more. So let’s dive in and see what’s new!
Studio Pro performance
In this release, we improved the performance of several Studio Pro UI components making opening or large dialogs faster. Also, the Performance of editing domain models in large projects has been significantly improved, making changes to entities, like adding association, up to four times faster. And last, we have also improved the commit dialog. Be assured, though, there’s more to come!
The most upvoted forum feature request was to add annotations to Workflow. We have listened to your request and added them! In Studio and Studio Pro you can now add annotations to activities to any workflow.
Allow failed workflows to be aborted
When a workflow has failed (for example due to a Microflow call resulting in an exception), you can now abort a workflow (which was previously prohibited by the runtime).
Note: Workflows can be aborted using the Microflow activity “Change workflow state → Abort” or via the Workflow Commons module by using the Admin page.
The quality of documentation can have a tremendous impact on developer productivity. That is why we regularly spend a lot of time on our documentation and make sure it is always up-to-date. Lately, however, we noticed that Makers have been struggling to find the mobile information they need because our mobile documentation has been scattered across various categories. So we took a step back, evaluated our mobile documentation structure, and decided that things needed to change!
Meet the new structure of the mobile documentation:
In this update, we have moved all mobile documents to the new “Mobile” category of the Studio Pro Reference Guide space (no more switching between the Reference Guide and how-tos) and have organized them around a typical mobile development lifecycle. For our next step, we want to add more content that is relevant to you. Please visit us in the Community Slack and give us feedback on the new structure as well as what content you would like to see added.
Autofocusing is a great way to make your native app easier to use. With it, your app can automatically open the keyboard and prompt the user to type as soon as the page is loaded – a step that will make the end user’s experience smoother, saving them precious time and attention. After all, our goal is always to make the user’s life easier.
With our latest release, we are excited to announce a new property for textbox and textarea to set autofocus. When set to “true”, it will result in the input field automatically receiving focus and triggering the keyboard to open.
The Marketplace has a fairly large number of available widgets, and to date, those present in the Marketplace are ones that Studio admin have selectively approved. To help Studio admin, the content curation process will be extended to company admins so they can have more governance control over both public and private widgets. Companies will be able to better control what widgets to offer to their Studio Users (citizen developers). Company admins will also be able to hide Marketplace widgets for their citizen developers. Similarly, in the case of private widgets, company admins will be able to approve and hide private Marketplace widgets in Studio.
One-way navigable associations
When you define associations in a Mendix Domain Model, you can use them starting from either side of the association. Consider the example below. Starting from a student object you can use the associations to query all his/her books. Alternatively, if you have a book object, you can use the association to retrieve all Students associated with a book.
OData contracts allow you to define associations that can be used from one side only, e.g., you can get all students associated with a specific book, but you can not retrieve all books for a specific student.
Mendix 9.15 now supports OData contracts using these one-way navigable associations. You can not only use them as the basis for consumed OData services, but Studio Pro also helps you use these one-way navigable associations in the correct way. As illustrated below, the domain model now shows these associations with a dotted line, and an arrow specifying in which direction the association can be used is also included. In addition, other parts of Studio Pro also consider the impact of these associations and help you model your app. The page editor, for example, will only allow you to nest External Entity data in a way that is supported by the OData API.
Support for AppDynamics in the Mendix Cloud
Application performance monitoring is vital for running mission-critical apps. Next to our out-of-the-box monitoring and our Datadog integration, we have released an integration with AppDynamics. You can enter your AppDynamics configuration in the environment details pane in the developer portal to get started.
Environment metrics from the runtime and the database will be sent to AppDynamics after entering the configuration details. Optionally, app metrics such as request handler metrics and Microflow metrics can be sent to AppDynamics as well. You can find more information on how to configure the AppDynamics agent in our documentation.
Web Application Firewall for the Mendix Cloud
All applications in the Mendix Cloud are now protected out-of-the-box with AWS Web Application Firewall (WAF). The WAF protects against common attacks such as SQL injection and cross-site scripting. Mendix will continue to configure the WAF based on continued learnings and OWASP recommendations to safeguard your apps.
The MxAssist Logic Bot now recommends the top five most likely actions in the application logic modeling and automates the development further by pre-populating the parameters for a chosen action. We have been working on enriching the auto-parametrization of the Logic Bot. With this release, we have extended the auto parametrization for the “Loop through a list”, “Change variable” and “Create variable”.