Mendix Studio pro

9.8.0
Stable
November 30, 2021
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 30th, 2021** ### New Features * We added functionality for creating a [Git branch](https://docs.mendix.com/refguide/create-branch-line-git-dialog) from a previously tagged version or from a specific revision of the main line or another branch. ### Improvements * We increased the node memory limit when bundling custom widgets from 512MB to 1GB. This should prevent running out of memory when bundling large apps with lots of custom widgets. (Ticket 88774) * A microflow with a [Show home page](https://docs.mendix.com/refguide/show-home-page) activity now sends used objects in memory when called. (Ticket 127576) * We no longer invalidate sessions when the deletion of existing sessions fails after an app model change. (Ticket 127632) * We added the option to enable checking security for pages only accessible by page URL. This is enabled by default for new apps and will also become the default in the next major Mendix version. (Ticket 129205) * Native mobile apps now encrypt the authentication token and session cookie on Android to further enhance security. New native mobile apps apply this encryption automatically. For existing apps, the native mobile app needs to be updated and built based on [Native Template 6.2.9](https://docs.mendix.com/releasenotes/mobile/nt-6-rn#6.2.9) or higher. (Ticket 129891) * We improved the accessibility of the [navigation list](https://docs.mendix.com/refguide/navigation-list) widget. (Ticket 132663) * On SQL Server, we no longer require a username and password if the `DatabaseJdbcUrl` has been set. This is based on an [upvoted idea from Ronald Burgman](https://forum.mendixcloud.com/link/ideas/2463) in the [Mendix Idea Forum](https://forum.mendixcloud.com/link/ideas). Thanks, Ronald! * The **Configuration** button on the [MxAssist Performance Bot](https://docs.mendix.com/refguide/mx-assist-performance-bot) pane is now disabled while checking errors. * MxAssist Performance Bot has a new [best practice](https://docs.mendix.com/refguide/performance-best-practices#mxp009) for detecting when excessive levels of inheritance may impact performance. * We added the fallback tile icon view in the [Toolbox](https://docs.mendix.com/refguide/view-menu#toolbox) for those tools that do not have a proper tile image. * When you right-click a [non-persistable entity](https://docs.mendix.com/refguide/persistability#non-persistable) in the domain model, the option to publish it as an OData resource is now disabled. This avoids a consistency error, as non-persistable entities cannot be published in OData services. * The [Create object](https://docs.mendix.com/refguide/create-object) and [Change object](https://docs.mendix.com/refguide/change-object) activities in nanoflows now fail if they set the value of an attribute or association that is read-only for the current user. * It is now possible to select your [WorkflowContext](https://docs.mendix.com/refguide/workflows#parameters) entity without an association already existing. When done, the necessary association is created for you. * We removed the redundant **OK** button from the [History](https://docs.mendix.com/refguide/history-dialog) dialog box, leaving only the **Close** button. * When you consume an external entity, the name in the domain model editor is now consistent with the dataset name in the [Data Hub Catalog](https://docs.mendix.com/data-hub/data-hub-catalog/). * When a dataset or data source is validated in the Data Hub Catalog, it is now also shown in the [Data Hub pane](https://docs.mendix.com/refguide/data-hub-pane) in Studio Pro. * We changed how the names of external entities are displayed in the Data Hub pane so that they are now consistent with the dataset names in the Data Hub Catalog. * The native [check box](https://docs.mendix.com/refguide/check-box) widget now has a render mode option, allowing you to choose whether to present the widget as either a check box or a switch. * Ordering by associated attribute now also works in DB2 and SAP HANA and thereby in all supported databases. * It is now possible to change associations via [published OData services](https://docs.mendix.com/refguide/published-odata-services). * When [deleting a branch](https://docs.mendix.com/refguide/collaborative-development#deleting) from the Branch Line Manager, a progress window is now shown. * We upgraded the SVG library to version 3.3.0. #### Microflow Calls in Offline-First Apps We have improved the internals of how non-persistable objects are passed as microflow parameters in offline-first apps. This means better performance, increased stability, and more flexibility. A microflow call is now a single request instead of multiple network calls, which improves performance and stability when calling microflows. Depending on the amount of objects sent, this can be a meaningful boost to performance. And one more thing. Do you recall the error message, “Non-persistable objects created in a microflow can’t be passed to another microflow”? Well, you can forget it! We are happy to announce that you can now pass non-persistable objects to microflows, even if they were created inside another microflow. #### Default Values in Offline-First Apps With this release, we added support for default values in offline-first apps. This means that when an object is created, it uses the default values as defined in your domain model, just like web apps do. This new process is aligned with online and web apps and makes creating new objects easier. ### Fixes * We fixed an issue with the data grid's drop-down search containing no values. (Ticket 107361) * The **Select** button on reference selectors is now blocked when the selected page is being shown. This prevents end-users from accidentally opening the selected page more than once. (Ticket 108295) * We fixed an issue where a background application window was focused after a notification disappeared. (Ticket 125320) * We fixed an issue where every time the system tried to delete invalidated sessions, an error was thrown. (Ticket 126415) * We fixed an issue where the expand button was sometimes displayed in the **Select Entity** dialog box for an entity without another associated entity. (Ticket 127417) * We fixed an issue where automatically generated mappings incorrectly tried to add an association to a system entity or an [external entity](https://docs.mendix.com/refguide/external-entities). (Ticket 128339) * We fixed an issue where Mendix Runtime did not start after a module containing a remote entity was replaced. (Ticket 131331) * We fixed an issue where invalid SVGs in the image collection crashed Studio Pro while an app was being published. (Ticket 131378) * We fixed an issue with switching to **None** for the **Close Pages** option in the [Show page](https://docs.mendix.com/refguide/show-page) activity. (Ticket 131890) * A pluggable widget configured with an association, microflow, or nanoflow data source was sorted incorrectly when some attribute values were empty. This has been fixed. (Ticket 132290) * We fixed an error with the XPath constraints of the `[$object/flag]` form when `$object` is empty. (Ticket 132531) * We fixed an issue where the [Auto-Load More](https://docs.mendix.com/appstore/widgets/auto-load-more) widget did not work as expected with a list view. (Ticket 132953) * We fixed the reference selector behavior for click and delete interactions. It is now again possible to clear the selection by pressing Delete. (Ticket 133209) * We fixed an issue that occurred with the [data grid](https://docs.mendix.com/refguide/data-grid) inline editor while using non-persistable entities. (Ticket 133700) * We fixed an issue in the App Explorer where the active item selection border was not displayed when all nodes were expanded. (Ticket 134616) * We fixed an issue in the [Call web service](https://docs.mendix.com/refguide/call-web-service-action) activity where selecting an operation from a [consumed web service](https://docs.mendix.com/refguide/consumed-web-services) located in a Marketplace module was not possible. (Ticket 135402) * We fixed an issue in [consumed OData services](https://docs.mendix.com/refguide/consumed-odata-services) that occurred when running on Parallels on a Mac where a contract from the disk would show as though it came from a URL. * We fixed an issue that occurred when reading the metadata of a consumed OData service where (navigation) properties marked as non-updatable in the metadata appeared to be updatable. * We fixed an issue with a GUID key being sent as a string literal when looking for an associated object in consumed OData services. * We fixed an issue in the generated metadata of a [published OData serivce](https://docs.mendix.com/refguide/published-odata-services). The capability annotation that indicated which (navigation) properties were not updatable used a string instead of `(Navigation)PropertyPath`. * We fixed a bug where fields were not read-only while editing when multiple conflicting access rules were present on an entity. * We fixed a bug where tooltips were not showing when a button was disabled. * We fixed an issue where a non-persistable object was rolled back in a microflow in an offline-first app and the value for a changed attribute reverted back to the default value of that attribute. Now, the attribute's value reverts back to the committed value instead. * We fixed an issue in consistency checking where a [Call REST service](https://docs.mendix.com/refguide/call-rest-action) activity with file document result handling but no type specified for the variable resulted in an exception. * We fixed an issue where the [Send external object](https://docs.mendix.com/refguide/send-external-object) activity did not send an attribute that was made empty. * We fixed a bug where the **History** form title showed incorrectly. * We fixed a bug where filtering the [commit history](https://docs.mendix.com/refguide/history-dialog) by the selected unit was not working for Git-based apps. * We fixed an issue in the app selector where version-controlled apps that were not checked out locally were displayed as **Unversioned** and had a default SVN icon (even when those apps were under the Git version control system). * We fixed another issue in the app selector so branches are ordered with the main branch displayed first. * We fixed an issue where the [Atlas UI Resources](https://docs.mendix.com/appstore/modules/atlas-ui-resources) module could not be imported from the Marketplace. * A data view in read-only mode no longer does unnecessary commits. * We fixed an issue with resizing dialog boxes that contain expression editors. Now, these editors scale according to the size of the dialog box. * When using DB2, the `DATEDIFF` OQL function now correctly returns negative values where applicable. * We fixed an issue where descriptions were lost when creating a deployment package again for the same revision. You are now asked if you want to overwrite your previous description or continue creating the package with the existing one. * We fixed the functionality of selecting a **Data Type** item via keyboard shortcuts. ### Known Issues * When you update a [consumed OData service](https://docs.mendix.com/refguide/consumed-odata-service) with a new version from [Mendix Data Hub](https://docs.mendix.com/data-hub/) but close the document without saving, the blue arrow icon will no longer be shown to notify you about the available update for that service. * Workaround: Closing your app and opening it again fixes this issue. * In the **Properties** pane, you cannot copy, paste, or delete using keyboard shortcuts. * Workaround: Perform the same operation using your mouse and the context menu.