Skip to main content

Changelog

Updates, changes, and improvements at Retool.

You don't have to upgrade existing apps that use the legacy Table component. You can continue to configure the legacy Table in your existing apps, and then use the new Table component when you have an app to build.

If you want to migrate an existing app to use the new Table component, use this guide to learn more about the differences before migrating.

Column configuration

The new Table no longer supports the Auto column format. Each column must have an explicit format. Each column can contain an optional source key, which maps the column to a field in the data source. If the source key is omitted, the column is effectively a custom column.

Properties

Some commonly used Table properties have been renamed. Anywhere in your app where you reference these properties, you’ll want to update those references to the new property names.

selectedRow

The property to access the Table’s selected row changed from table1.selectedRow.data to table1.selectedRow.

currentRow

currentRow in a column’s mapped values is now currentSourceRow, to make it explicit that it references the underlying source row’s data.

recordUpdates and changeSet

The legacy Table’s edited fields were exposed in recordUpdates and changeSet. These fields are now changesetArray and changesetObject, respectively. These properties no longer contain the entire row’s data, and instead only contain the modified fields.

Pagination controls

Pagination controls are now nested under table1.pagination. This means referencing a table’s pageSize, for example, is done using table1.pagination.pageSize. Pagination is now accessible in the Table’s Add-ons section in the Inspect tab.

Save and cancel buttons

The new Table exposes the built-in save and cancel buttons for bulk editing in the Add-ons section of the Inspect tab.

Sorting controls

The legacy Table exposed several fields to represent the Table’s sorting state: defaultSortDescending, defaultSortByColumn, sortedColumn, sortedDesc. The new Table exposes the sortArray property, which represents the entire sort state of the table.

Filtering controls

The legacy Table did not support nested filtering. The new Table supports nested filters with the filterStack property.

Feature comparison

See below for a feature-by-feature comparison of the legacy Table and the new Table.

Updated approaches to existing features

CategoryFeatureDescription
Column typeAuto columnThe new Table forces explicit column types.
Column typeButton columnThe new Table has redesigned actions for triggering events.
Column typeUser Email columnThe new Table has an Avatar column that serves the same purpose.
Column typeModal columnModal columns are not supported natively in the new Table, but can be implemented by using a Column event handler to trigger a Modal component open.
ActionsAction button columnsThe new Table floats all action buttons to the right edge of the table when you hover over a row.

Legacy features unsupported in the new Table component

CategoryFeatureDescription
Column typeRating columnYou can use a Tag column to represent a rating cell instead.
SortingSort columns by raw valueThe new Table sorts columns by their mapped values.
StylingRow colorRow color is not supported in the new Table.

Retool Mobile now enables you build white-label Retool Mobile apps and launch them in the iOS App Store and Google Play. With a white-labeled app, you can choose your app’s name, icon, and splash screen, and also manage the version of the app available to your users to take full control of what you build. White-labeled apps are available to customers on our Enterprise plans. Contact us to get started or read our white-label app docs to learn more.

  • Added a Create resource button to all resource configuration pages without one
  • Added a Create resource button to the Google Sheets resource configuration page
  • Added a Day component
  • Added an offset to function blocks in Retool Workflows so that multiple blocks don't overlap
  • Added count and updateByQuery to Elasticsearch
  • Added functionality to workflow queries so their errors can be displayed
  • Added image uploader support in the editor to Retool Mobile's Image component
  • Added the ability to hide the minimap when editing a Retool workflow
  • Added the option to copy a shareable link to the Share button
  • Fixed an issue where Debug Tools didn't open after a successful auth test when configuring a resource
  • Fixed an issue where failing to publish a push notification to one device with Retool Mobile prevented push notifications from being published to other devices
  • Fixed an issue where scope and audience were included for non-client credentials OAuth
  • Fixed an issue where text in the Libraries menu was cutoff within a Retool workflow
  • Fixed an issue where the login logo aspect ratio was incorrect for white label apps
  • Fixed an issue where you could not create a new query when the selected query's resource no longer exists
  • Fixed block icons in Retool Workflows so they match the menu icons
  • Fixed misaligned text in the Retool Workflows Resource query block
  • Improved IDE performance when mousing over the canvas
  • Improved mobile camera experience on tablets
  • Improved the Inspector so that properties in the Add-ons, Validation Rules, and Style sections don't persist if they're added but not configured
  • Improved the styling for the Import from Query Library options for the Resource query block in Retool Workflows
  • Improved the UI for selecting access options when sharing an app

  • Added additional permissions checks when running workflows from apps.
  • Added a refresh button to workflow run history in Retool Workflows.
  • Added keyword search terms for icons.
  • Added rate limiting when triggering workflows from apps.
  • Added retry functionality to workflow blocks.
  • Added support for apps to wait for a response when triggering workflows with Response blocks.
  • Added support for scope selection to BigQuery resources.
  • Displays an error message when a SCRIPT tag in a Custom Component fails to load.
  • Fixed an issue where a protected resource with multiple environments could not be moved.
  • Fixed an issue where code autocomplete may return a list of unrelated results in the code editor.
  • Fixed an issue where editing preloaded JavaScript may cause URL parameters to not function correctly when using the latest runtime.
  • Fixed an issue where event handlers with dependencies on other event handlers may not function correctly when using the latest runtime.
  • Fixed an issue where parent window queries may hang if the parent window failed to respond.
  • Fixed an issue where queries may run in a stale state when saving changes under poor network conditions.
  • Fixed an issue with Retool Mobile apps where input sheets may not function correctly when using the on-screen keyboard.
  • Improved component search results in the right panel of the App editor.
  • Improved GUI mode queries that perform bulk updates by increasing timeout to 120s.
  • Improved handling and messaging for users that do not have sufficient permissions to perform certain actions.
  • Improved insufficient permission error handling on pages for which users do not have access.
  • Improved JavaScript linting in code editors.
  • Improved query editor formatting by changing the keyboard shortcut to Shift+Alt+F.
  • Improved the functionality of the pop-out code editor.
  • Improved the layout of resource settings.

  • Added a "Default camera" setting on the Scanner component on Retool Mobile to support toggling between front and back cameras.
  • Added a link to the JDBC documentation within the JDBC editor.
  • Added an rtTags field to managed app configs for Retool Mobile to support arbitrary key-value pairs on Android devices.
  • Added controls to display List View components horizontally or as a grid.
  • Added permissions restrictions when running Workflows from apps.
  • Added placeholder JSON to the Workflow Params field when using Workflow resources in the query editor.
  • Added support for the beautifulsoup4, json, datetime, and tabulate libraries in Retool Workflows blocks.
  • Fixed a memory leak.
  • Fixed an issue where an unnecessary error would show in the Firebase raw query editor.
  • Fixed an issue where changes to the Inspector may be undone.
  • Fixed an issue where hover tooltips did not work on items within nested List View components.
  • Fixed an issue where JavaScript variables would be overridden in the latest runtime when the "Keep variables in sync" setting was enabled.
  • Fixed an issue where Jira resources may fail to authenticate when using shared credentials.
  • Fixed an issue where key values would occasionally fail to render new data in the latest runtime.
  • Fixed an issue where public apps with passwords would sometimes fail to load when using the latest runtime.
  • Fixed an issue where temporaryState.setIn did not work propertly in some cases in the latest runtime.
  • Fixed an issue where the FullStory alert handler in Retool Workflows did not properly accept an API key.
  • Fixed an issue where the hover tooltips in the query editor would sometimes move away from the editor when scrolling.
  • Fixed an issue where the lastest runtime crashed from using the keyword parent in some template strings.
  • Improved text selection on Retool Mobile.
  • Removed the connection string display in the Resource config for Retool Database. Connection strings are accessible from the dropdown in the Database editor.