Skip to main content

Changelog

Updates, changes, and improvements at Retool.

73 posts tagged with "Apps"

View All Tags

Per-page view permissions for multipage apps

Isabella Borkovic
Software Engineer

Organizations on the Business or Enterprise plan can now restrict users from accessing specific app pages with per-page permissions. When configuring a permission group, you can now also specify permissions for each page.

Per-page permissions are generally available on Retool Cloud and in on Self-hosted Retool versions 3.219.0 and later.

Page UUIDs in Source Control

Isabella Borkovic
Software Engineer

Retool has rolled out unique identifiers (UUID) for app pages. If you use Source Control, Retool recommends that you create a new branch with no changes and push it to Source Control. If you use Retool Cloud or self-hosted Retool 3.191-edge or later, Retool automatically creates a migration commit to add UUIDs to each page. Once you merge this commit, you can successfully configure per-page permissions on your protected app.

If you are working on more than one branch before the UUID addition in version 3.191-edge, Retool runs the migration on each of those branches, and the branches will end up with different UUIDs. Make sure add UUIDs only once, do not override the UUIDs on the main branch after adding them. Doing so results in the inability to set per-page permissions, because the IDs initially set on main are the ones that Retool will use.

Module layout updates

Darya Verzhbinsky
Darya Verzhbinsky
Software Engineer

Retool added two new configuration settings that enable you to customize the layout of modules:

  • Height: Whether the default height of the module is automatic or fixed.
  • Overflow: Whether overflow content in the module is hidden or accessible via scroll.

When you configure these settings inside the module editor, the settings apply as the default values only to new module instances. Existing module instances are unchanged. You can also override these settings for a single module instance by changing them in the Inspector of the app that contains the module.

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.