Mendix Studio pro

December 20, 2022
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: December 20th, 2022** ### New Features #### Multiple Snippet Parameters With this release, we have made reusing your app's UI simpler and more powerful. Following up on support for [multiple page parameters](, we have added support for [multiple snippet parameters](! You can now pass multiple parameters to a snippet call, just as you can with pages, microflows, and nanoflows. Inside a snippet, you can select attributes from a parameter directly or create data views that use a parameter or its associations. In addition, the parameters can also be used in expressions without the need for a data view. Just like page parameters, snippet parameters are created automatically when you select an entity for the **Context** data source of a data view inside a snippet. You can also click **Parameters** in the top bar of the page editor to change the parameters of a snippet manually. This is based on an [upvoted idea from Bart Rikers]( submitted to the [Mendix Idea Forum]( Thanks, Bart! ### Improvements #### Performance Improvements * We decreased the time it takes to rename an entity and corresponding associations. For more complex entities with a lot of associations, the speed has been increased significantly, but it is also noticeable with smaller configurations. ##### Git Version Control Improvements * New apps created in Studio Pro or in the Developer Portal will by default be created with Git as the version control system. However, you can still choose to create an app in SVN. * For apps using Git as the version control system, the **Update** command has been renamed to **Pull**, which is more common Git terminology. * If pushing your changes to the server fails because you first have to pull and merge changes from the server, you no longer get an error, but an information message describing the steps to take. #### Other Improvements * Signing in using your default browser is now the only way to sign in to Studio Pro. * We improved the modeling experience when moving or copy-pasting a widget that uses an attribute. In many situations, there is only one available entity for which the selected attribute (path) is valid; therefore, the widget can be reconfigured automatically. This prevents unnecessary consistency errors that would need to be fixed manually. * You can now use rules to make validation microflows using Validation Assist. * In workflow settings, we changed the text of the **Parallel Workflow executions** setting to **Workflow instance threads** and the **Parallel task executions** setting to **Microflow threads**. * In workflow settings, we removed the cap on the amount of workflow instance threads and microflow threads. * We added the option to copy the styling of a widget. This enables copying the inline styles, (dynamic) classes, and (applicable) design properties to other widgets. For details on copy-pasting widget styling with shortcuts, see [Studio Pro Overview]( * We added a new method to the Runtime API to set the workflow parameter context object. ### Fixes * We fixed a [known issue]( where navigation between dockable panes using Ctrl + Tab while in the microflow editor, page editor, or **Properties** pane after releasing Ctrl did not close the pane-selection dialog box. (Ticket 163193) * We fixed an issue where searching for date and time values with the **Range Search Field** filtered the dates in the wrong way. (Ticket 147935) * We fixed an issue where a pop-up window was closed even though a blocking progress bar was displayed. (Ticket 168238) * We fixed an issue where certain data or actions could not be retrieved or executed because of conditional visibility. (Ticket 168875) * We fixed an issue where creating a deployment package on Mendix Cloud failed for an app with over-the-air (OTA) updates enabled. (Ticket 169390) * We fixed an issue that prevented client log nodes from being initialized and appearing in Mendix Cloud facilities, which was affecting native logs from being sent to the Mendix Runtime. (Ticket 170826) * We fixed an issue where a thumbnail was not deleted when the image associated with the thumbnail was deleted. (Ticket 171367) * We fixed an issue in published OData services where resources with keys other than `id` threw an error when the client left out the key from the `$select` clause. (Ticket 171726) * We fixed an issue that occurred when editing a SCSS file and closing the editor with unsaved changes. (Ticket 171763) * We fixed an issue where the editors for pages, snippets, layouts, building blocks, and page templates became very slow after copying a widget. * We fixed an issue in workflows where an enumeration-based decision with an empty option failed if the empty path was not the last position. * We fixed an issue in published OData services where using single quotes (`'`) to address an object caused an error to occur. * We made several improvements in log subscribers: * The log message format has been unified for `FileSubscriber`, `ConsoleSubscriber`, `LoggerSubscriber`, and `SyslogSubscriber`. * When logging an error, the log message and exception stack trace are now printed as a single log entry. * We improved internal error handling in the following ways: * If `FileSubscriber` detects an infinite logging loop while logging an internal error, it stops using the Logging API and writes the error into a *.err* file. This file is saved to the same directory as the regular log file. * All other subscribers do the same, but they write the error to [stderr]( * Validation Assist now works correctly with external entities. Instead of committing them, the [Send external object]( activity is used for such entities in a generated microflow. * We improved how MxAssist Performance Bot Best Practice [MXP012]( finds the committed variables and also handles logically empty loops. * We made the **Console** grid sortable. * We added support for the [REPLACE](, [LOWER](, and [UPPER]( functions for OQL. * When using a String (in ISO 8601 format) or Integer/Long (milliseconds since Jan 1, 1970) in the OQL functions `DATEDIFF` and `DATEPART`, they are now converted to a Date and Time not only when the function is used in the `WHERE` clause, but also in the `SELECT` clause. * In the microflow editor, you can now filter microflow actions to process lists (for example, using **Union**, **Sum**, or **Sort**), which makes it easier to select the right list activity type. * We fixed an issue that occurred where publishing an entity in an OData service caused consistency error CE6624 ("a validation rule is required") for entities that do not allow validation rules, such as system entities and external entities. * We fixed an issue in consumed OData services that caused an error when filtering on Boolean attributes in a data container widget. * We fixed an issue that prevented published OData services from properly handling update and delete requests if the exposed entity was not persistable. * We fixed an issue where a snippet call without a snippet selected threw an error. * We fixed a UI issue where the workflow editor in dark mode showed incorrect icons and used incorrect colors. * We fixed an issue that caused a consistency error when generating user task pages with only one outcome. * When duplicating or copying workflows, pages set on user tasks were cleared, which resulted in consistency errors. Now, the user task pages set are no longer cleared. * We improved user task properties by swapping the location of the default option of who can access the configuration. * We now support deleting an external object and then creating a new object with the same key. * We fixed an issue with proxy authentication that occurred when a locale or language pack other than **English** was used on the user's machine. ### Deprecations * We have deprecated the `Core.retrieveXPathQuery` methods in the Java API. Please use `Core.createXPathQuery` instead. ### Breaking Changes * Collaborating with Mendix Studio is no longer possible for Studio Pro 9.21 and above. To upgrade an older app where collaboration is still enabled, you have to first disable collaboration. For more information, see the blog post [Coming in 2023: The Merging of Studio and Studio Pro]( and the [Collaborative Development with Studio from Mendix 9.21]( section in *Collaborative Development*.