Mendix Studio pro

9.24.3
Stable
June 07, 2023
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: June 7th, 2023** ### Improvements * We added `getSslContext` to the `IHttpConfiguration` interface in the Mendix Runtime API. This gives the Java code access to the `SslContext` that should be used to call a service based on the Mendix Runtime settings. * We added the custom setting `RequestHandling.AllowLegacyCookies` to allow for violations of RFC 6265, which is enforced in the most recent Jetty versions (for more information, see [RFC6265_LEGACY](https://www.eclipse.org/jetty/javadoc/jetty-10/org/eclipse/jetty/http/CookieCompliance.html#RFC6265_LEGACY)). Be aware of the fact that enabling this custom setting exposes your app to [CVE-2023-26049](https://www.cve.org/CVERecord?id=CVE-2023-26049). * We changed the default location for a published OData service to use lower-case. * We added an error page for when Studio Pro cannot open your default browser from the login dialog box. * We added a private market option to the list of available target markets for Studio Pro. ### Fixes * We fixed [CVE-2023-32314](https://www.cve.org/CVERecord?id=CVE-2023-32314). * We fixed an issue where objects were garbage-collected for pages with multiple page parameters. (Ticket 180470) * We fixed an issue where the `originURI` cookie could not be read when using the default `index.html`. (Ticket 181106). * We fixed an issue where importing a file from a version below 9.24 caused many errors to appear. (Ticket 182860) * We fixed an issue where attribute widgets (for example, a text box) did not trigger a consistency error if the selected attribute had an invalid source, causing an error when deploying the app. (Ticket 183379) * We fixed an issue with getting the device name as the phone's factory name in mobile apps. (Ticket 183392) * We fixed an issue that occurred when a nanoflow retrieved a non-persistable entity over an association and the entity had an event handler. (Ticket 183879) * We fixed an issue with dojo widgets that was causing custom icon collections not to work. (Ticket 183996) * We fixed the colors of the term `empty` and the symbol `-` in the XPath constraint editor. (Ticket 183998). * We fixed an issue in published REST services where publishing two REST services on the same location caused a consistency error. (This was not a problem where services did not publish resources and operations that resulted in the same operation URL.) (Tickets 185087, 185423) * We fixed an issue that caused the warning pop-up window for the [inline snippet](https://docs.mendix.com/refguide/snippet-call/#inline-snippet) action to mention the same affected widget multiple times. * We fixed an issue that caused the inline snippet action to crash if the surrounding data widget was not configured. * We fixed an issue where a page parameter triggered a warning that it was unused if the only reference to that parameter was inside an XPath constraint. * We fixed an issue where a page parameter did not trigger a warning that it was unused if the parameter mapping of an action or data source pointed to an object of the same entity as the parameter. * We fixed an issue in the grid control where selecting multiple cells using Shift was inconsistent when clicking on the interactable control itself in the cell (meaning, the check box). * We fixed an issue with the search field where multiselection did not work correctly with numeric attributes. * We fixed an issue that occurred when the **Commit Message** field was not focused upon opening the **Commit** dialog box. * We fixed an issue where expressions in pluggable widgets were not updated correctly when renaming an element (like a module or an entity), which caused consistency errors. * We fixed an issue in the OpenAPI contract of published OData services where the server URL contained a double slash. * We fixed an issue that occurred when adding external entities to an app where the generation of enumerations caused an error. * We fixed an exception in the XPath constraint editor that was thrown when the list of autocomplete suggestions was open and an erroneous character was being typed. * We fixed a Mendix Runtime error that occurred when a microflow was no longer being used in an app after doing a hot reload in Studio Pro. ### Deprecations * We deprecated the `Counters`, `Gauges`, `Sets`, and `Timers` interfaces from the Mendix Runtime API. Implementations for these interfaces were only accessible through deprecated methods before. These will be removed in Mendix 11. ### Known Issues * Converting apps with business event services that were built with Studio Pro 9.23 and below to Studio Pro 9.24 causes a problem where the event name of subscribe events incorrectly also includes the prefix. This breaks the business event functionality and prevents apps from receiving events. * Workaround: Remove the implementation of the event from the service and then re-add it. This way, the event name will be set correctly. You can manually delete the newly generated entity and microflow, and you can reselect the previous microflow handler for the event. If you want to keep the old entity, rename it to the name of the generated entity you deleted. Click **Continue** to accept the warning about the existing usage of the new name of the entity. The old microflow and entity is then connected to the new event.