Skip to main content

Changelog

Updates, changes, and improvements at Retool.

A new home page

The home page is the first screen you see after signing in. It’s the hub of Retool: where you go to create a new app, access apps you’ve already built, and discover apps built by teammates. To make it easier for new users to get started — and existing teams to manage a growing number of apps — we’ve rebuilt the Apps home page from the ground up with a focus on speed and visibility.

Some of our favorite features of the new home page include:

  • Quick links to access apps you’ve recently viewed or starred
  • Ability to view all your folders
  • See when an app was last edited and by whom with more app metadata
  • Search for pages by name (and last editor) and faster page loads

What's using this button?

Components, transformers, state, and queries now show dependencies in the model browser! Hover over the blue icon next to the name to see the dependencies. For example, you can see which components update textinput1 and what components textinput1 depends on.

Tables

As usual, we've made improvements to the table component, given how core it is to the Retool experience. Let us know if there any cases that make using tables particularly slow or cumbersome, and we’ll be on it!

Performance

  • Performance improvements for tables that contain dates
  • Tables with content that overflowed columns now load faster
  • Tables load data faster

Pagination

  • Fixed Action Buttons not rendering correctly in Tables that use forward-cursor-based pagination
  • Allow users to disable the "Next" button on the Table for forward-cursor-based pagination
  • Fixed how the Table decides to update the afterCursor property when the data has been fully loaded

Custom column types

  • Fixed an issue where tables with dropdown type columns did not load dynamic data correctly
  • Fixed an issue where tables with dropdown type columns would sometimes crash
  • Fixed an issue where dropdown type cells in tables would search via value instead of label

Features & Integrations

  • Added startAt and endAt to Firestore queries for use in pagination
  • You can now delete shared queries in the query library
  • Imported queries that have been deleted can now be converted to a regular query

UX Improvements

  • The JSON Explorer component now opens all nodes by default
  • Added Cmd/Ctrl+Shift+P as a shortcut to go to presentation mode
  • Added transformers back to the model browser

Bug Fixes

  • Fixed issue where changing URL parameters in REST resources didn't let you save the resource
  • Fixed an issue where clicking on a state variable wouldn’t focus the inspector
  • Fixed an issue where zero values did not display correctly in Text components

  • General editor performance improvements
  • Dragging new components onto the canvas should be faster
  • Dropdown components are faster when using “Max Results”
  • Faster scrolling for wide tables

Copy and paste components between apps

  • Copy & paste entire components from one app to another!

Visual cue for staging environment

  • Added a yellow banner for both Editor and Presentation modes when staging mode is selected
  • Only available for apps that have a staging environment configured

Visual cue for staging environment

New

  • Start, stop, resume, and reset a stopwatch-style timer timer component

New & Improved

  • Added triggeredby``Id attribute to manually-triggered queries so you know what triggered it
  • Added button to Settings > Advanced page to download Retool’s public key for git syncing
  • Added support for auto-pagination for DynamoDB resources
  • Added ability to specify GCS bucket in resource editor
  • Added ability to specify more than 1 permitted file type for S3 Uploader components
  • Added onchange query trigger for Radio Group components
  • Added write-back capability for BiqQuery resources
  • Added setValue function to Editable Text component
  • Added autocomplete for JS query utility libraries
  • Now displaying hints for common SQL query gotchas in query editor
  • Various performance improvements for big Retool apps
  • Better UX in Query Playground for long queries

Concurrent developer warnings

  • Added a notification to the header that shows who else is modifying the same Retool app.
  • You can use this to avoid overwriting changes that your team mates are making to the Retool app.

Screen Shot 2019-06-03 at 2.19.47 PM.png

Deleting apps

  • Added ability for admins to permanently delete apps that are in the archive folder.

Screen Shot 2019-06-03 at 2.21.58 PM.png

New

  • Added the option to specify the ACL for files uploaded to Google Cloud Storage
  • Added option to allow users to define custom values in Multiselects. Enable this by using the "Allow user defined values" option in Multiselects.

Screen Recording 2019-06-03 at 02.25 PM.gif

Resource access levels

  • Extended the access control levels in Retool to allow admins to restrict access to Resources connected in Retool.
  • You can use this feature to do things like:
    • Only allow analysts to use readonly database connections.
    • Only allow developers to use apis / databases that they manage.

Screen Shot 2019-06-03 at 1.54.16 PM.png

Here, the group lets the "Awesome Intern" use the onboarding_db (readonly) and onboarding_api resources to create / modify apps

Query playground

  • Added the Query Playground which lets developers write queries quickly without having to create an app. Screen Shot 2019-06-03 at 2.02.33 PM.png

  • Coming soon: reusing queries you write in the playground within your Retool apps.

Tile homepage view

  • Added a new tile-based home screen for Retool apps
  • You can customize the image you use for each tile.
  • You can also "favorite" your most frequently used apps so that always appear at the top of the page.

Screen Shot 2019-06-03 at 2.08.00 PM.png

New

  • Added support for deleting S3 files.
  • Added support for S3 bucket URLs in APIs that use the AWSv4 authentication method.
  • Increased maximum timeout for queries to 10 minutes.

Fixed

  • Fixed how custom redirect flows in "Custom Auth" APIs work in "staging" environments.
  • Fixed POST/PUT/DELETE requests in the Stripe integration that have an empty body.

Query Caching

  • Added query caching as a way to optimize the performance of Retool apps.
  • Queries can have its results cached for up to one day (the cache TTL)
    • The first time you run a cacheable query, it will run the query normally and then remember the query result.
    • Anytime anybody runs the query again the remembered result gets returned instantly.
    • The remembered result is deleted after the cache TTL expires.
  • You can configure this option in the "Advanced options" section of the query editor.

Screen Shot 2019-05-20 at 7.36.17 AM.png

Retool community!

New and Improved

  • Added lastUploadedFileName to the S3 Uploader component. Works similarly to the lastUploadedFileUrl.
  • Added live warnings to make it easier to write Javascript scripts.
  • Added a utils.downloadFile function to Javascript scripts. Use this to with API queries that return pdfs / docx / xlsx / etc. to download the files returned. Docs here.

Fixed

  • Changed the MongoDB insertOne queries to also return the created object, including the MongoDB _id.
  • Fixed deadlink on the Permissions dashboard.

RethinkDB Integration

  • Added RethinkDB as a Retool integration.
  • Run get, insert, update, delete, and find queries on your database.
  • Let us know what else we can add.

Lambda Integration

  • Added AWS Lambda as a Retool integration.
  • Invoke lambda functions with whatever payload you need.
  • See more info in our docs here.

Improved

  • Added support for sharded Microsoft SQL Server databases.
  • Improved the user management screen in Retool. Disabled users are greyed out, and we show accurate last active dates for each user.

Fixed

  • Fixed how Custom Auth API integrations work in staging environments
  • Fixed how non-string values are passed in FormData API requests.
  • Fixed error that Slack webhooks would return in on premise Retool.
  • Disabled overly aggressive cache headers in on premise Retool.
  • Fixed editing JSON columns in editable tables.

Filter Audit Logs by User

  • The Audit Logs can now be filtered by users as well.

Screen Shot 2019-02-04 at 12.54.18 AM.png

Firestore References

  • Firestore query by reference / inserting and updating references.
  • Here's an example of how to specify that a string should be a "reference" type:

Screen Shot 2019-02-04 at 12.56.13 AM.png

  • Inspired by the MongoDB Extended JSON syntax, you use $ref to specify that the string should be a ref. In any place where you might be a normal value you can now use the following to refer to a reference.
{ $ref: "collection/documentId" }

Misc

  • The moment-timezone library has been added to Retool. You can now use expressions like {{ moment.tz('2019-10-10 13:43', 'America/New_York').toISOString() }} to convert dates in different timezones

Performance Improvements

  • We've optimized filtering through the audit logs that Retool collects so that you can now efficiently trawl through all the queries that your users have run in Retool.
  • Apps should now start up between 1-2s faster on average.
  • Tables are more efficient when rendering large amounts of data.

Disabled Controls

  • Every control in Retool now can be dynamically disabled
  • This includes Text Inputs, Dropdowns, MultiSelects, RadioGroups, Checkboxes, Checkbox Groups, Button Groups, Rating components, and more.

Custom Tooltips

  • Every control can now also have a custom tooltip! Screen Shot 2019-01-31 at 8.30.54 PM.png

Git Integration

  • Retool supports version controlling and serializing apps to a git repo
  • Retool also supports reading and recreating apps from a git repo
  • This allows for designing pull-request flows for deploying apps from staging environments to production environments.
  • To learn more, see the documentation.

Permissions Redesign

  • The entire UI for interacting with users, groups, and apps have been modified for more clarity.

Screen Shot 2019-01-31 at 8.41.50 PM.png

Fixed and Misc Features

  • Components in modals will render with the correct sizes in Firefox.
  • We've added a Date Time column type to Tables.
  • Deleting components will automatically trigger a save point in Retool.
  • You can now trigger queries when checkboxes are switched on and off.
  • MongoDB validations for field, limit, and skip have been fixed.
  • Retool apps now live on /apps instead of /presentation
  • The Retool autocomplete now triggers in more sensible scenarios
  • Retool folders are now sorted alphabetically

We're excited to publicly launch Retool. We usually update our changelogs every 2-3 days so be sure to check here often!

We'll be following semantic versioning https://semver.org and we'll be careful to annotate any potentially breaking changes that we release.

For our on-premise customers we'll also be posting the version numbers of all our releases.