Mendix Studio pro
10.17.0
Stable
November 27, 2024
Mendix Studio Pro is our low-code IDE for professional developers. It's a powerful visual model-driven development environment to build apps on the Mendix Platform. With Studio Pro you can easily create, change, integrate, test and deploy your applications, all in one place. Moreover, you can manage branch lines and security as well as extend your app with custom code using the built-in editors.
Click 'Download Studio Pro' to get the installer for free (Windows OS required*). Learn more about the installation and the Studio Pro capabilities in our documentation.
Not a professional developer? Learn How Mendix supports different developer profiles
.Before installing, please read the Release Notes to learn about improvements, bug fixes, backwards compatibility, breaking changes and known issues.
*If you are using a Mac, check out these instructions first.
Release Notes -
**Release date: November 27, 2024**
### New Features
#### Consumed REST Services (GA)
The Consumed REST Service document is now released for general availability for Windows. This document allows you to integrate with REST services faster. You can build REST requests, test them directly, and convert their response to entities without building any of the mappings manually. For more information, see [Consumed REST Services](https://docs.mendix.com/refguide/consumed-rest-services-beta/).
#### Other New Features
* We now allow you to define parameters of microflows and nanoflows as optional using the [Argument](https://docs.mendix.com/refguide/parameter/#argument) property. This means they can be called with an empty argument expression. Additionally, you can define the default value for when the parameters are called with an empty expression. When a parameter is added as an optional parameter, updating the parameter mappings is also optional. This means you can effectively use the optional parameters to easily add new parameters without having to update all of your calling microflows/nanoflows/pages.
* We added an iterator index variable `$currentIndex` to loops in nanoflows and microflows.
* The modernized version of the System Text editor is now enabled by default. It is still possible to opt-out in the Studio Pro settings.
* We added a new tab to App Configurations called [Headers](https://docs.mendix.com/refguide/configuration/#headers). This can be used to locally configure headers that will be used during development. There is a list of pre-defined headers (currently, Content-Security-Policy is the only pre-defined header), but you can also add any custom header. Use custom headers with caution, as incorrect values can break your application.
* We added support for the *mx.parser* in the React Client API.
* We added the option to start the runtime automatically from a configuration file. In this case M2EE commands are no longer needed for startup.
* We released new CLI command that allows you to see statistics on unit sizes in your app. For more information, see [MPR Analyze Command](https://docs.mendix.com/refguide/analyze-mpr/).
### Improvements
* We added a custom runtime setting `DataStorage.OptimizeSecurityColumns` to optimize columns that are added to the SQL generated for retrieve actions to evaluate XPath constraints in entity access rules. (Ticket 229009)
* We improved the Beta version of the access rule editor based on the user feedback.
* We improved the workflow modeling experience by automatically moving any remaining activities to the parent flow when a final outcome of an activity is deleted.
* We streamlined adding boundary events by removing the event type selector, making it faster and easier for users.
* We aligned the [microflow settings](https://docs.mendix.com/refguide/on-click-event/#microflow-settings) for **Execution**, **Confirmation** and **Advanced** sections when configuring a microflow call for different widgets (for example, a data container or a button). (This is based on submitted ideas from various users: [Jordy Delahaije](https://community.mendix.com/link/space/studio-pro/ideas/3676), [Jason Teunissen](https://community.mendix.com/link/space/user-experience/ideas/1971), [Joël Boosman](https://community.mendix.com/link/space/microflows/ideas/2470), [Jannes Houben](https://community.mendix.com/link/space/widgets/ideas/1868), and several other. Thank you all!)
* For [Maia Domain Model Generator](https://docs.mendix.com/refguide/domain-model-generator/), we now return dynamic responses to the questions asked. You can now have meaningful follow-up conversations while generating a domain model.
* We added the ability to change the Studio Pro log level via the **Help Menu > Support Tools**.
* You can now enable a simplified version of the dialog box that appears when Studio Pro is executing an operation via the **Help Menu** > **Support Tools**.
* We optimized the memory consumption when using the **Refresh** button in **Stories** and when closing an app after the **App Settings** dialog box was opened.
* We updated the version of .NET Runtime Studio Pro uses to version 8.0.10.
* We improved the consistency error for the location of published OData and REST services in Studio Pro. Studio Pro now checks that the location does not start with the URL prefix configured in the app's runtime settings, rather than checking for the static value `p`.
* We now support the OpenTelemetry Micrometer registry. Using this registry metrics can be sent with the OpenTelemetry protocol. It can be configured using the `opentelemetry` registry type.
* We added a [new setting](https://docs.mendix.com/refguide/preferences-dialog/#debug-info) to **Preferences** called **Generate Full Debug Info** that allows you to include full debug information when compiling Java actions.
* Call Home licensing has been improved so that any node can report license usage to the license server. Only one node will send the report, but it will not necessarily be the one specified by the setting [`com.mendix.core.isClusterSlave`](https://docs.mendix.com/refguide/custom-settings/#commendixcoreisClusterSlave).
* We added Git process command line interface logging to improve traceability and debugging of version control activities.
* We added a new icon in the **History** dialog box to mark revisions where MPR format of this revision and previous revision is different.
* We improved code syntax highlighting in certain editors especially in the dark mode.
### Fixes
* We fixed a [known issue](https://docs.mendix.com/releasenotes/studio-pro/10.6/#ki-finished-parallel-split) where a versioning conflict was raised if a finished parallel workflow path was removed.
* We fixed a [known issue](https://docs.mendix.com/releasenotes/studio-pro/10.6/#ki-positioning-error) with the logic editors where there was a positioning error when inserting a large element into a sequence flow.
* We fixed an issue that a microflow list variable in a loop was unusable after this variable was used in a **Delete Object(s)** activity. Previously, nothing was happening when adding objects to a list variable which was previously used in the **Delete Object(s)** activity. Now objects are readded, and following actions on this list will receive a list with the added items. This fix also helps to avoid out-of-memory errors when creating or changing a lot of objects in a loop and deleting them with list variables. The old behavior can be enabled again by setting the value of the `Microflows.RemoveVariableOnDeleteObjectsActivity` custom server setting to `true`. This setting will be removed in Mendix 11. (Ticket 66606)
* We removed changing condition values on flows in the logic editors through the Logic Recommender. (Tickets 213544, 216126, 216721)
* We fixed an exception (the **Oops** pop-up window) that occurred when an unknown variable was being used in the microflow expression editor. (Ticket 222410)
* We fixed an issue when images synchronization took considerable amount of time. (Ticket 226400)
* We fixed an issue where reordering editor tabs for pages made the editor unresponsive. (Ticket 227386)
* We fixed an issue where apps did not build due to non-standard filesystem incompatibility. (Ticket 228531)
* We fixed an issue in the Dojo client where a microflow using **Close all pages** activity followed by an **Open page** activity failed to open the page in specific situations after using the browser’s back button. (Ticket 229707)
* We improved the client performance of the Data Grid 2 widget configured with custom content columns. (Ticket 229940)
* We fixed an issue where incorrect license information was logged. (Ticket 230319)
* We fixed an issue where scheduled events stopped being rescheduled after database connection issues occurred. (Ticket 230873)
* We fixed an issue in offline apps that after synchronization an object was not found by the **Retrieve By Association** action in case of a reverse association traversal. (Ticket 231027)
* We fixed an issue that resulted in an **Oops** pop-up window when using the Combo Box widget and accessing its **Properties** pane. (Ticket 231451)
* We fixed an issue with external entities having a key containing a string of unlimited length. Even after setting a length limit, the database table for the key still had unlimited length, which was a problem for databases that did not support indexes on unlimited strings. (Ticket 231700).
* We fixed an issue where variables and captions disappeared in the microflow editor when using the **Send REST Request (beta)** action. (Ticket 232567)
* We fixed an issue during app deployment: widgets with [On-change events](https://docs.mendix.com/refguide/on-click-event/#on-change) accepting parameters triggered an error when used inside a snippet. (Ticket 233500)
* We have fixed an issue when the sidebar was shown on a different page: the sidebar was shown on the main page.
* We fixed an issue where a service worker in a PWA cached the *index.html*. This caused issues when a *new index.html* was generated, for instance, when migrating an application from the Dojo to the React client.
* We fixed an issue where an **Oops** pop-up window was displayed when opening the **Page Settings** dialog. Specifically, this occurred when opening the **Page Settings** dialog of a **Create object** action from a menu item.
* We fixed an issue where an **Oops** pop-up window was displayed when adding or changing the [custom validation](https://docs.mendix.com/refguide/common-widget-properties/#custom-validation) for a widget.
* We fixed an issue where opening a new chat in Maia shortly after sending a message resulted in an error.
* We fixed an error that occurred in the **Call external action** activity of a microflow.
* We fixed an issue that the Version Selector remained open after launching Studio Pro.
* We fixed an error that occurred when the app was closed while error check was still active.
* We fixed the issue where in HSQLDB a CAST clause failed to execute if results of all CAST branches were constants.
* We fixed the autoscroll not stopping when dragging an item outside the microflow editor and releasing the mouse button.
* In the logic editors, we fixed flows in loops disappearing while the containing loop was being moved.
* We fixed a regression in logic editors where a remaining decision outcome was not automatically assigned to a newly created sequence flow.
* We fixed an issue in logic editors where it was allowed to create a sequence flow to a parameter object and where it was allowed to create a sequence flow from an object to one of its surrounding loops.
* We fixed an exception (the **Oops** pop-up window) that occurred when dragging items from the modernized **App Explorer** to an editor.
* We changed the default caption for the **Delete object(s)** activity when using a list variable to **Delete objects in variable** instead of **Delete variable**. This caption better indicates that the activity deletes the objects themselves.
* We fixed an issue of **Oops** pop-up window in case of *git.exe* was not found for some version control operations.
* We fixed an issue with linking story to a commit. If a specific story is selected to be linked with a commit, then eventually all available stories were linked instead of the one selected.
* We fixed an issue in the new entity access rules editor (beta) where the XPath row was missing and it was impossible to create a new access rule with an XPath.
* We fixed an issue where Studio Pro threw the CE0570 (*URL not unique*) consistency error when a user undid removing a URL from a page or a microflow.
### Deprecations
* We dropped support for PostgreSQL 12, as it is no longer supported by the vendor.
* We deprecated `ICoreAction.getMetaInfo`. You can use `ICoreAction.getMetaInfoJsonString` instead.
### Known Issues
* Line endings in CSS files are not being handled properly, so when using [Revert All Changes](https://docs.mendix.com/refguide/using-version-control-in-studio-pro/) or performing other version-control operations, CSS files appear in the [Changes on Disk](https://docs.mendix.com/refguide/version-control-menu/#show-changes) dialog box.
* Workaround: For details, see [this section](https://docs.mendix.com/refguide/troubleshoot-version-control-issues/#css-error) in *Troubleshooting Version Control*.