Skip to main content

Changelog

Updates, changes, and improvements at Retool.

70 posts tagged with "Apps"

View All Tags

Migration commits in source control

Retool recently made changes that make it easier to review changes in source control. Retool now separates system-generated updates related to version upgrades into their own migration commit, so your pull requests are cleaner and easier to understand.

This feature is generally available on Retool Cloud. It is available in private beta to Self-hosted Retool organizations on edge version 3.203.0-edge or later, and will be generally available in an upcoming stable release. Self-hosted Retool organizations can reach out to support to enable this feature.

What's new

Instead of bundling migration changes with user changes, they now appear in a dedicated commit.

No setup needed—this happens automatically when you make commits.

This migration commit is required to ensure compatibility with the latest Retool features. Please do not revert or modify it.

Record user sessions with Fullstory

Eric He
Eric He
Software Engineer

Retool can record user behavior and interactions with apps using Fullstory. When enabled, data about user interactions with apps are reported directly to Fullstory for you to review in detail. You can then analyze app analytics, evaluate impact, and review interactions with session replay. This integration is useful for monitoring user activity across different apps, and using advanced analytical tools like heatmaps and funnels to identify usage patterns, debug errors, and improve the overall user experience.

Improvements for exporting to modules

Darya Verzhbinsky
Darya Verzhbinsky
Software Engineer

Retool updated the Export to Module feature for usability improvements. This feature allows you to select components on the canvas and “refactor” them into a module.

The following key changes were made:

  • You can now export a single component to a module. For example, you could export a single container (and all its children) to a module.
  • When making the export, all the related logic, such as queries, variables, and transformers, is automatically included in the exported module. This eliminates the need to manually copy logic to the module.
  • Once the export is complete, Retool automatically replaces the selection with the newly created module. This eliminates the need to import the module after you export the selection.

Access Export to Module in one of the following ways:

  • Select one or multiple components, right-click, and select Export to module.
  • Select multiple components and click in the Inspector.

Debug Tool searching

Lam Tran
Software Engineer

This change is live on Retool Cloud and it will be included in upcoming edge and stable releases of Self-hosted Retool.

Searching is now supported in the Console and State tabs of the Debug Tools.

Users can search logs and states using any free text, negation, regex, or exact phrases:

  • Free text: Matches any string.
  • Negation: Prefix with - to exclude a match. For example: -error
  • Regex: Use slashes for regex. For example: /^foo/
  • Exact phrases: Wrap multi-word strings in quotes. For example: "query failed"

You can combine search terms using spaces (e.g. "query failed" -/error/ success).

App page save compaction

Luke Foster
Software Engineer

Retool made internal improvements that streamline the way we save and store your app saves, resulting in quicker app load times for users.

These improvements are automatically applied to customers on Retool Cloud. If your organization is self-hosted, run the following shell command in your backend container to remove old entries for apps that have been deleted and compact data from app edits older than a month:

./retool_backend --run-pagesave-compaction

Run this command as often as necssary to clean up your database.

You can also pass in an optional --concurrency parameter to specify the number of concurrent connections to the database in order to speed up the process. For example, --concurrency 4 opens 4 connections. The default value is 1.

Bulk component editing

Jeffrey Bui
Jeffrey Bui
Software Engineer
Jynnie Tang
Software Engineer

You can now select multiple components and edit them at the same time using the Inspector. Select multiple components by clicking and dragging a selection box around them, or by using / + click.

When bulk editing components of the same type, such as two Buttons, you can edit all properties of the component. When bulk editing different types of components, such as a Button and a Text Input, you can edit the properties shared by the two components.

Properties that differ between components are identified as Mixed in the Inspector.

In-place conversion to multipage

Isabella Borkovic
Software Engineer

You can now convert legacy single-page apps to multipage without needing to leave the IDE. Navigate to the Pages tab, and click Convert to multipage.

If you change your mind and want to undo this change, navigate to the Releases and history Releases and history tab and revert your app to the change before the Migrated app to multipage change.

Creating new single-page apps is no longer supported.

Single-page apps can no longer be created

Matthew Carroll
Software Engineer

The legacy option to create single-page apps has now been deprecated and is no longer available. Going forward, all newly created Retool apps support multiple pages, and newly created mobile apps support multiple screens.

Your existing single-page apps will continue to function as expected, and you are not required to migrate them. If you would like to do so, you can import legacy single-page apps as pages or use the Duplicate to multipage action on the apps landing page.

With multipage apps, Retool only evaluates the code and components of the page currently in view. The benefits of multipage apps include:

  • Greater performance of large and complex apps. Since Retool only evaluates code and components for the current page, multipage apps are 30-40% faster than a single-page app.
  • Seamless navigation between pages. Retool loads the complete app state whenever a user navigates to a single-page app. With multipage apps, navigation between pages is seamless and more responsive.
  • Improved app management. Multipage apps can replace multiple apps in your organization, such as a team's frequently used apps. This reduces the number of apps to maintain and allows for easier permission management.
  • Reduced module dependency. Modules are commonly used to create shared navigation menus across multiple single-page apps. With multipage apps, you can eliminate the need for additional modules and the complexities with maintaining them.
  • Simplified code sharing. The mechanisms for sharing code and components in multipage apps (global code, frames) are lower friction, easier to set up, and more powerful than the mechanisms for sharing code across apps (modules, query library).

The App Inspector

Isabella Borkovic
Software Engineer

The App Inspector now appears when you have the Inspector open but no component selected. The App Inspector includes the following settings that were previously found in the App Settings sidebar:

  • Browser title
  • Custom URL
  • Custom shortcuts
  • Max width

The App Inspector also includes the Persist URL parameters setting, which configures search query parameters and hash parameters to persist during page navigation and when switching pages with the “Go to Page” event handler.