What's new on Retool

Retool news feed and changelog.

New
December 03, 2021

December 3, 2021

Dynamic Icons

You can now configure icons dynamically! Anywhere in Retool where you can add an icon, like a prefix/suffix icon for Text Input components, you can now dynamically change it based on any Javascript expression. Type the new command /icon to pop up the new icon picker to choose from over 3,000 searchable icons with support for bold and outline styles.

These new icons and the ability to set dynamic icons are available for all cloud-hosted Retool instances and will be available in an upcoming on-premise release. Let us know if you have any feedback in the community forum.

Fixes and improvements

  • Fixed the "allow overflow" option on Table component columns
  • Improved overflow for Table component cells with large contents
  • Fixed the focus API for Date and Time components
  • Fixed the Tags component to show more text when wrapping is turned off
  • Improved the Tags component so that it can fit on a single line
  • Fixed default labels for Select components
  • Fixed the default workspace for permission groups
  • Fixed a rendering issue on focus for Listbox and Multiselect Listbox components
  • Fixed the authentication dropdown for REST resources in the query editor
  • Added support for tel:, sms:, and webcal:// links in markdown
  • Added support for forwarding cookies for HTTP requests inside custom authentication
  • Fixed SCIM group deletion so that it will not affect default groups–"admin," "editor," "viewer," "All Users"(on-premise only)

Check out this guide to see the on-prem versions and their release notes. These fixes and improvements will be rolling out to on-prem customers in the next few weeks.

emoji negative reaction for 'December 3, 2021' emoji neutral reaction for 'December 3, 2021' emoji positive reaction for 'December 3, 2021'
Thank you for your feedback.
New
November 19, 2021

November 19, 2021

Container and Form

Container and Form components have received major upgrades to layout, styling, data handling, and configuration options. In particular, these updates make working with forms much faster and easier than before!

Layout

Container and Form now support optional headers and footer slots, which are customizable via the inspector. The header and footer slots function as additional canvas areas, allowing you to drag and drop any component into either slot. For example, you can now build a Form with two buttons in the footer: reset and submit.

Styling

You can quickly style all components nested within a Container or Form via the Context section of the style editor, and separately style the Container or Form as well.

Data handling

Forms now support a new property called Initial data. If you’re building a Form to edit existing data, you can quickly set the default values of all of your inputs by setting this property. For example, to map your Form’s input defaults to the selected row in a table, set the Form’s Initial data property to {{ table1.selectedRow.data }}. Form inputs also have a data key which you can use to match the keys in the Initial data object. If you use our Form generator, those inputs will be linked automatically (you can also use ctrl + click to generate/regenerate a Form).

Another critical part of form building is writing the underlying query that writes data back to your database or API. Previously, these queries required setting key-value pairs manually in Retool’s GUI mode query editor. Now, you can supply the object {{ form1.data }} to properly persist the changeset from your form!

Expanded API

Lastly, we expanded Form's API to give you more programmatic control over your forms! In addition to supporting submit and clear , we’ve added reset and setData.

If you have any questions or feedback on form building in Retool, head to our community forum. These new features are rolling out over the next week.

Fixes and improvements

  • Added a setValue API for Date Range components
  • Added selectedIndex and selectedIndexes properties to Select, Multiselect, Listbox, Multiselect Listbox, Radio Group, Segmented Control, and Switch Group components
  • Added case sensitive and fixed string searching to Select, Multiselect, Listbox, and Multiselect Listbox components
  • Fixed modal column types in Tables to scroll if their content overflows
  • Fixed an evaluation issue with self when controlling another component
  • Fixed the bounding box for Container components with children
  • Improved performance when editing a Table component
  • Fixed an evaluation issue with mapped columns in Table components
  • Fixed the context menu so it closes when you click outside of it

Check out this guide to see the on-prem versions and their release notes. These fixes and improvements will be rolling out to on-prem customers in the next few weeks.

emoji negative reaction for 'November 19, 2021' emoji neutral reaction for 'November 19, 2021' emoji positive reaction for 'November 19, 2021'
Thank you for your feedback.
New
November 12, 2021

November 12, 2021

Generating forms

Retool’s form generator now lets you automatically create forms with our new input components! Simply drag a Form onto the canvas, click “generate from a resource,” then select your SQL resource and table. In a few steps, you can build a fully functioning form—without writing an insert query or dragging-and-dropping individual components!

The form generator flow also has a few new improvements, including:

  • Smarter component defaults: given your column type, we’ll select a default type from our new input components. For example, a varchar(n) column will default to a Text Input but can be changed to an Editable Text, Text Area, or Password. An integer column will default to a Number Input but can be changed to an Editable Number, Percent, Rating, Currency, or Slider.
  • Automatic labels: We automatically generate labels for you (e.g. a column named created_at will be given the label “Created at”). You can also quickly tab through the fields in each row to edit the labels directly before generating your form.

You can always modify or extend your form by dragging-and-dropping other components into the Form and modifying your insert query. Additionally, you can regenerate your form via the context menu (⌃ + click on the Form component). To learn more about building forms in Retool, including more details about form generation, check out the docs. Form generation only works with a subset of SQL resources (PostgreSQL, MySQL, and MS SQL) right now, but if you’d like to see us support other resource types, let us know in the community forum.

Fixes and improvements

  • Added the ability to upgrade deprecated Date Time components
  • Added a transition to the Date and Date Time calendar
  • Fixed DST handling for Date Time components with the time zone value set to "Local time"
  • Fixed formattedValue in Date Time when no timeFormat is specified
  • Improved placeholders for configuring URL parameters
  • Added support for arrays as parameters for Snowflake queries
  • Improved performance of Snowflake queries
  • Fixed query loading indicators in presentation mode
  • Added warning logging when expected SAML fields are unset (on-prem only)

Check out this guide to see the on-prem versions and their release notes. These fixes and improvements will be rolling out to on-prem customers in the next few weeks.

emoji negative reaction for 'November 12, 2021' emoji neutral reaction for 'November 12, 2021' emoji positive reaction for 'November 12, 2021'
Thank you for your feedback.
New
November 05, 2021

November 5, 2021

Date, Time, Date Time, and Date Range

Date Range component

We’ve added brand new Date, Time, Date Time, and Date Range components! They are fully keyboard accessible and provide tons of new functionality like automatic time zone handling, expanded formatting options, and more robust validation:

  • Automatic time zone handling: We have a new option called “manage time zone” that allows you to set both a display time zone and a value time zone. Display time zone controls how time is displayed to your users, while value time zone controls how it’s encoded. This separation allows you to do things like set your display time zone to follow your user’s local browser, while encoding your times in UTC!
  • Expanded formatting options: both dates and times now support all format strings and times default to a localized format. You can also control the step size of time increments that your users see in the dropdown selection (e.g. 15-minute or 30-minute steps).
  • Validation: You can also set a min/max time and/or a min/max date. The date and time selection UIs respect your component's configured validation, so invalid options are either disabled in the calendar or don’t appear in the dropdown. This even works with “manage time zone” enabled: you can set validation constraints in your value time zone, and the selection UI will correctly adjust, maintaining your display time zone!
Display and value time zone in PDT

These components also support the same options as all of our new input components, including: expanded label support to control position, alignment, and width (in percent, grid columns, or pixels), read only and disabled modes, prefix/suffix text, prefix/suffix icons, an optional tooltip with GitHub flavored markdown, expanded style editor support, and more!

Drop us a note in the community forum if you’d like to see us add more functionality to these components. Date, Time, and Date Time are available now for all users, and Date Range is rolling out over the next week. All of these components will be available in the next on-premise release!

Fixes and improvements

  • Fixed the Image component so it doesn't force authentication in public applications
  • Added query loading indicators in presentation mode
  • Added a transition to the Date and Date Time components’ calendars
  • Added support for a focus state for the Editable Text and Editable Number components

Check out this guide to see the on-prem versions and their release notes. These fixes and improvements will be rolling out to on-prem customers in the next few weeks.

emoji negative reaction for 'November 5, 2021' emoji neutral reaction for 'November 5, 2021' emoji positive reaction for 'November 5, 2021'
Thank you for your feedback.
New
October 29, 2021

October 29, 2021

{{ self }}

Components can now reference themselves in the inspector using the {{ self }} keyword! Access any component properties using {{ self }}, like the component’s value/values, label/labels, settings like disabled, hidden, readOnly, and validation properties such as maxCount.

For example, in a component like Select or Multiselect, you can set the labels to dynamically update to the capitalized values with {{ self.values.map(_.startCase) }} –this will actually be the new default going forward! It also makes dynamic styling much more powerful–for example, you can style the Statistic component’s trend green when {{ self.secondaryValue > 0 }} and red otherwise to indicate upward or downward trends.

{{ self }} is available for all components, and works in their event handlers, too! We’ve updated a bunch of our components to use {{ self }} for better defaults–but we’re excited to see what you configure with it. Drop us a note in the community forum with any examples, feature requests, or feedback! This feature is available to all cloud customers, and will be included in the next on-premise release.

Fixes and improvements

  • Fixed unexpected layout shifts in some apps while dragging/resizing
  • Fixed form generation to set labels correctly for checkboxes
  • Improved performance when querying the audit log
  • Added the ability to enable/disable release management across an organization from Advanced Settings

Check out this guide to see the on-prem versions and their release notes. These fixes and improvements will be rolling out to on-prem customers in the next few weeks.

emoji negative reaction for 'October 29, 2021' emoji neutral reaction for 'October 29, 2021' emoji positive reaction for 'October 29, 2021'
Thank you for your feedback.
New
October 22, 2021

October 22, 2021

Statistic

We overhauled our Statistic component! Previously, you could only set a single primary value, and we supported limited formatting options. Now, you can also set a secondary value to compare metrics over different time periods (e.g., to show monthly revenue growth). Additionally, the primary and secondary values have the same powerful customization options as our Number Input component, including currency and percent formatting, decimal place control, and more. The new Statistic component supports more features, including the ability to dynamically control positive and negative trend color, set a caption text, control alignment, and more.

Like all of our new components, the Statistic component also has expanded style editor support. You can automatically migrate your old Statistic components to this new version, too! As always, post in our community forum if you have feedback on this new component or feature requests.

Icon library

We now offer over 3,000 searchable icons with support for bold and outline styles. You’ll have access to this library anywhere where you can set an icon in Retool. To use any of our old icons, choose the deprecated icon set. These are rolling out to editors over the next week.

Fixes and improvements

  • Added documentation for the majority of component properties, visible in autocomplete and model browser tooltips
  • Improved app performance on page load
  • Fixed Google Datastore ordering options
  • Fixed public apps in Incognito mode for Chrome
  • Improved SQL auto-formatting
  • Fixed "body query type" for REST APIs with custom auth
  • Fixed the layout for Image components in Firefox
  • Added support for upgrading caret type Toggle components to the new Toggle Link component
  • Fixed unexpected layout shifts in apps with tall dynamic height Text components
  • Fixed SQL schema column types to display as timestamp or timestamptz instead of timezone
  • Added support for an optional label on the File Dropzone component
  • Added an option to configure text size on the Divider component

Check out this guide to see the on-prem versions and their release notes. These fixes and improvements will be rolling out to on-prem customers in the next few weeks.

emoji negative reaction for 'October 22, 2021' emoji neutral reaction for 'October 22, 2021' emoji positive reaction for 'October 22, 2021'
Thank you for your feedback.