Mendix Studio pro
10.15.0
Stable
September 24, 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: September 24, 2024**
### New Features
#### Non-Interrupting Timer Boundary Events
We added non-interrupting timer boundary events as a beta feature. This feature triggers a boundary flow if an activity exceeds its expected duration, based on a timer that is defined on the boundary event.
A boundary flow runs in parallel to the workflow activity they are attached to, without interrupting the main process.
Boundary events can be set for key activities that can be suspended, such as user tasks (single and multi), **Call Microflow**, **Call Workflow**, and **Wait for Notification**, providing more flexibility in workflow management.
For more information, see [Boundary Events](https://docs.mendix.com/refguide/workflow-boundary-events).
#### X-Ray Mode Becoming Generally Available
X-Ray mode is generally available now for both Windows and macOS. X-Ray mode is a way to better visualize the structure of your page while in Design Mode. It adds a special border around certain widgets, like layout grids and containers, while keeping most of your apps styling the same. We also added data source information to data widgets in this release. For more information, see [X-Ray Mode](https://docs.mendix.com/refguide/page/#x-ray-mode).
#### New Options under Help Menu > Support Tools
We added the following new options to **Help** menu > **Support Tools** (for more information, see [Help](https://docs.mendix.com/refguide/help-menu/) menu):
* **Project Context** – This option shows a pane containing information about part of the background memory of Studio Pro.
* **Background** – This option shows a pane containing information about current and previous background tasks.
* **Collect version control data** – This option helps you collect basic version control data kept in the logs of Studio Pro.
* **Profiling** > **Capture Memory Snapshot** – This option captures a snapshot of memory consumed by Studio Pro. The snapshot is written to disk, which you can then send to the Mendix Support teams. For more information on this option, see [Profiling](https://docs.mendix.com/refguide/profiling/).
### Improvements
* We improved error messages for connection errors when an action or a data source is triggered. (Ticket 218338)
* We improved performance of the auto-completion pop-up window in the expression editor.
* Objects that are returned in the **Call External Action** activity are now uniquely identified using their remote key (if available). This allows you to associate local objects to external objects that are returned from OData actions.
* We upgraded bundled Node.js version from v16 to v20.
* We now throw a consistency error when a page or a microflow without any roles has a URL configured.
* Default values are now supported for action properties in pluggable widgets. An action property can have a defaultType and defaultValue. The defaultType can be set to call a microflow, call a nanoflow, or open a page.
* You can now use expressions for conditional visibility and dynamic classes without a surrounding data container. This simplifies modeling as you no longer need to add a wrapping data container when you are only using variables which are available at top level, e.g. page parameters, selections and constants. This feature is not available for data grid 1, template grid and is also not available for a list view under certain conditions.
This is based on a [question from Jean Gabeler](https://community.mendix.com/link/space/studio-pro/ideas/1548) asked in the Mendix Community. Thanks for bringing this to our attention, Jean!
* The **Overview Pages Generation** dialog box now allows to overwrite previously generated folders.
* It is now possible to create Studio Pro memory snapshots.
* We optimized the performance of the **Properties** pane when editing pages, enhancing responsiveness.
* In the case of a foreign key constraint violation during a commit, a `ForeignKeyConstraintViolationException` is now thrown. The error message is now uniform for all supported database vendors and is easier to understand.
* We added support for MariaDB 11.4.
* We added support for MySQL 8.4.
* We added hyperlinks for collecting feedback on published-GraphQL services via survey.
* We now clean up anonymous users after a REST call finishes.
* The **Commit** dialog box now always displays all the tabs. The tab titles indicate the number of changes, and the default focus is set to the tab with more than zero changes.
* We updated the system to store log files for up to 30 days, compared to the previous duration of seven days.
* We added a support for keyboard navigation in App Explorer on macOS and also for the modernized App Explorer on Windows.
* We added keyboard support of using Ctrl/Command + mouse scroll wheel to zoom in or out in the workflow editor.
* We upgraded the JDBC driver for Microsoft SQL Server to version 12.8.1.
* If you connect to SQL Server using integrated security in a module such as [Database Connector](https://marketplace.mendix.com/link/component/2888), you may need to update the JDBC driver in `userlib` as well.
* We made the following updates to the External Database Connector:
* We added support for hard-coded strings containing JSON as a parameter value and the **Query External Database** activity. (Ticket 223881)
* We added Ctrl + Enter as a keyboard shortcut for **OK** in the **Query External Database** dialog box. (Ticket 223881)
* We updated Oracle Library to 23.5.1 to fix TAF mode of `FAILOVER_TYPE=SELECT` if configured on Oracle DB. (Tickets 225454, 226404)
* We added scroll to the parameters section of Query External Database. (Ticket 227464)
* We now support updating existing entities with new and/or deleted columns.
* When creating a new query, you can now reuse existing entities mapped to other queries of the same database connection document.
* We added connector identification as "Mendix-ExtDbconnector_SP-#Version_MPK_#Version" for Snowflake connections.
* We introduced the Untyped Model Access feature to Extensibility API. For more information, see [Extensibility API Release Notes](https://docs.mendix.com/apidocs-mxsdk/apidocs/extensibility-api/release-notes/).
### Fixes
* We fixed an issue where a data validation error triggered on a rollback or a delete. We now remove data validation errors for objects that are rolled back or deleted. Any validation errors that you generate manually using a [validation feedback](https://docs.mendix.com/refguide/validation-feedback/) action will also be removed when an object is rolled back or deleted. (Ticket 192090)
* We fixed an issue where roles assigned to a user are ignored momentarily during runtime. (Ticket 221900)
* We fixed an issue where the garbage collector cleaned up objects being returned from a microflow before they could be returned, leading to an error. (Ticket 222075)
* We fixed an issue in Mozilla Firefox where the change event was triggered before input validations were complete. (Ticket 223757)
* We fixed an issue which occurred when querying an entity published by an OData service when it was filtered by an attribute of an associated entity and the association was a self-referencing many-to-one. (Ticket 224145)
* We fixed an issue where a native app was stuck starting over and over again in case the authentication token was no longer valid. We now clear the authentication and session cookie in case they are no longer valid. (Ticket 225198)
* We fixed an issue where Studio Pro crashed when using Shift + Enter in the Expression editor. (Tickets 225645, 226153)
* We fixed an issue where Core.initializeSession(IUser, ..) was blocked by a database transaction lock in case of SQL Server with foreign keys enabled. (Ticket 226036)
* We fixed an issue where building failed when an app containing jar exclusions and created with Studio Pro version 9.24.0 or below was opened with a newer version of Studio Pro. (Ticket 227102)
* We fixed an issue that prevented **Native Bottom Bar** styles from being applied.
* We fixed an issue where an **Oops** dialog was shown when opening the **Edit Datasource** dialog box for data grid 2 after editing an expression, e.g. when editing the expression for the **Option caption** of the [association filter](https://docs.mendix.com/appstore/modules/data-grid-2/#association-filter).
* We fixed an issue where an **Oops** dialog was shown when a generated column filter in a Data grid 2 is moved to another column.
* We fixed an issue in the Data grid 2 widget where setting a reference data source for filtering over associations in a column, triggered an automatic content generation.
* We fixed an issue that showed an **Oops** dialog box when switching a template parameter from an attribute to an expression if the attribute no longer existed in the domain model.
* We fixed an issue that when a pluggable widget with a text template property, which is [conditionally hidden](https://docs.mendix.com/apidocs-mxsdk/apidocs/pluggable-widgets-config-api/#customizing-the-widgets-properties) in Studio Pro, showed up in the [Changes pane](https://docs.mendix.com/refguide/changes-pane/) when you changed something else on the widget. For example, the **Load more caption** of Data grid 2 showed up as changed when you changed something else on Data grid 2.
* We fixed an issue with the extension cache clean-up in Studio Pro that resulted in issues with some extensions.
* We fixed an issue where on Mac a custom value was not persisted when switching from XPath Builder to XPath Expression Editor or when pressing the **OK** button.
* We fixed an issue where importing a spreadsheet with a dollar sign in the data in certain scenarios prevented the application from running (locally).
* We fixed an issue in the published OData services editor, which sometimes gave an error about trying to show a published microflow when no published microflow was selected.
* We fixed an issue in consumed web services where selecting a WSDL from a network drive that required authentication but did not return a WWW-Authenticate header resulted in an error.
* We fixed an issue in the logic editors where adding an annotation sometimes broke displayed variable types.
* In the logic editors, we fixed an issue where a **Retrieve over association** did not show the correct data type when it involved a generalization of an entity instead of the entity itself.
* In the logic editors, we fixed the highlighting of parameter objects when selected.
* We disabled selecting text in places where users would not want that.
* We now correctly take into account the excluded jars of managed dependencies when compiling Java actions.
* We fixed an issue where in some LibGit2 was not fetching extra objects while in partial mode.
* We fixed an issue where the icons for access rules in the new access rule editor were not clearly visible in dark mode.
### Deprecations
* We dropped support for MariaDB 10.4, as it is no longer supported by the vendor.
* Starting with version 10.17, we will drop support for PostgreSQL 12, as the vendor has announced the end of support for that version.
### 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*.
* A finished parallel split path that is removed from a running workflow instance wrongly leads to a versioning conflict. Please note that "path" was called "branch" in earlier versions.
* There is a positioning error in the logic editors when you are dragging a large element, such as a loop, into a sequence flow, it overlaps with the existing elements.
* Currently, boundary events are scheduled when the workflow activity with the boundary event is started. For user tasks this means that scheduling will happen before the targeting microflow finished running.
* When a failed activity with boundary events is retried, only the first level of boundary events is aborted/restarted. Lower nested boundary events are not aborted correctly.
* Currently, when the workflow jumps back into an activity that already has a scheduled (timer) boundary event it will schedule another timer event. This is incorrect and will be fixed in a future release.