Skip to main content

Changelog

Updates, changes, and improvements at Retool.

70 posts tagged with "Apps"

View All Tags

Changes to ToolScript file locations

Isabella Borkovic
Software Engineer

The directory structure for apps protected using Source Control is changing to reduce the likelihood of merge conflicts.

Component positioning information (stored in ToolScript files) is now organized by page. The apps directory contains a .positions directory, which contains one file per page in the format .pageName.positions.json.

Previously, all positioning information was stored in one .positions.json file. The new structure prevents merge conflicts.

This change is live on Retool Cloud, and it will be available in a subsequent release of Self-hosted Retool.

app-name
└── .defaults.json
└── .positions.json
└── .mobilePositions.json
└── lib
└── sqlQueryName.sql
└── jsQueryName.js
└── src
└── container1.rsx
└── functions.rsx
└── main.rsx
└── metadata.json

Personal folder for draft apps

Soe Myint
Software Engineer

Retool now supports Drafts, a tab of the Apps landing page that provides a personal folder for each standard user to develop and test apps. Only you and organization admins have access to view or edit apps that you create in this section. This feature is useful for organizations where creating applications and folders is restricted, because admins don't have to give users explicit permission to create apps in their Drafts.

The availability of the Drafts tab can be managed by admins in Settings > Beta using the Drafts folders setting.

The Drafts tab is currently rolling out on Retool Cloud and will be available on the next edge release of self-hosted Retool.

App-related Debug Tool improvements

Lam Tran
Software Engineer

Improvements to Debug Tools in the App IDE are now available.

This update includes the following changes and improvements to the Debug Tools:

  • New filters in the Linting tab: Errors and Accessibility.
  • New filters in the Performance tab: Severe, Moderate, and Minor.
  • In-line actions for automatic performance optimizations.
  • Actionable recommendations to the most common performance bottlenecks.
  • Links to relevant docs for further learning.
  • Removal of performance score and app stats.

Refer to the Web app and Mobile app best practices guides for more information.

Updates to the Retool Apps landing page

Neha Gupta
Software Engineer

Retool updated the layout of the Retool Apps landing page to reduce clutter and make it easier to find the apps you need. The updated organziation includes the following tabs:

  • Recent: The most recent 50 apps that you visited. The Viewed by me column shows the last time you opened the app, and the Location column shows you where the app is located.
  • Published: All items that you have access to within your organization. Use the dropdown to filter by Apps, Folders, Modules, and Protected.
  • Starred: The apps and folders that you starred.
  • Trash: The apps and folders in your organization that were deleted.

Improvements to the command palette

Darya Verzhbinsky
Darya Verzhbinsky
Software Engineer

Retool released several changes to the Command Palette that improve the experience when using apps with multiple pages. The following new features are supported:

  • New contexts: You can now select a page or a Main frame to use as a context for your search.
  • Page actions: You can now delete, duplicate, or create new pages.
  • Improved organization: When searching for components, results are now prefixed with their page ID, making it easier to tell where each component lives.

New version of the Cascader component

Jynnie Tang
Software Engineer
MB
MB
Software Engineer

A new and improved version of the Cascader component is now available on Retool Cloud and for self-hosted organizations. Retool recommends using the new component, and the legacy version will be deprecated. You can click Upgrade in the Inspector of an existing Cascader component to use the new version.

The new Cascader features:

  • The ability to manually add an option list or dynamically map one to existing data.
  • A new dropdown look, similar to the Select component.
  • New label options (customizeable caption, color, icon).
  • Options now support numeric values in addition to string values.

Some additional changes in this version include:

  • The value of the new Cascader component is the value of the selected option. A new valuePath property enables you to have access to the path of values leading to the selected option.
  • Option values must be unique.
  • Like other modern Retool components, values for options need to be unique. If you use the one-click upgrade for Cascaders, duplicate values will have parent values appended to make them unique.
  • Like Checkbox Group and Navigation, the data source is expected to be an array of objects with a property that points to its parent. Cascader nests options by parent value.

Retool apps now support multiple pages by default

Matthew Carroll
Software Engineer

Multipage apps are now generally available. Any new Retool apps that you create will support multiple pages by default. The creation of single-page apps is still supported but they are now considered legacy. Multipage for mobile apps remains in beta.

Building apps with multiple pages enables you to combine functionality and use cases. Retool only evaluates the code and components of the page currently in view, providing the following benefits:

  • Greater performance of large and complex apps. Since Retool only evaluates code and components for the current page, apps can perform 30-40% faster.
  • Seamless navigation between pages. Navigation between pages is seamless and more responsive than before as Retool only evaluates the current page, not the entire app.
  • Improved app management. Multiple pages 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 apps. With multiple pages, you can eliminate the need for additional modules and the complexities with maintaining them.

Each app uses global and page scopes to separate pages. Globally scoped code, and Header and Sidebar frames, are available for use across every page, while each page has its own page-scoped code and components.

Improvements to the Navigation component

Darya Verzhbinsky
Darya Verzhbinsky
Software Engineer

Improvements to the Navigation component are now available. When you add a Navigation component to an app with multiple pages, Retool automatically configures the menu items to map to the pages of your app. Event handlers are also preconfigured, and clicking a menu item takes you to the corresponding page.

You can still customize the Navigation component to have different behavior, if desired. Refer to the Navigation guide for more information.

This change also made retoolContext.pages and retoolContext.currentPage available. Refer to the Retool Context reference for more information.

Removal of image download functionality for external app users

Julie Chen
Deployed Performance Engineer

These features are no longer available on Retool Cloud and Self-hosted Retool 3.114 or later.

Due to potential security concerns, Retool is removing certain functionality that enables external app users to download images. No security breach or active vulnerability has occurred, and you do not need to take any security-specific actions.

External and embedded, publicly available apps will no longer support:

  • Download Image columns in the Legacy Table component. Use an alternative method, such as a Link or Button column type, for image URL links. Retool strongly recommends you migrate to the current Table component instead.
  • Export PDFs with images hosted on separate domains. All other components will be included in the PDF export. Retool recommends moving your publicly-hosted images to be hosted on the same domain as your Retool instance. For example, you could use images that are natively uploaded to the Image component, stored in Retool Storage, stored in Retool Database, Base64-encoded, or stored in an Amazon S3 bucket.