Self-hosted Retool release notes
Change and update information for Self-hosted Retool.
Retool releases a new version of self-hosted Retool every two weeks. Retool also updates existing versions with bug fixes and improvements as needed.
Version information and selection
Retool version numbers are formatted as X.Y.Z
:
X.Y
represents the release version, such as v2.93. This increments with each new version released.Z
represents the full version of the release, such as 2.93.9. This increments with each update and does not always start at zero.
We strongly recommend you point your Dockerfile to the full X.Y.Z
version rather than a Docker tag name. This ensures that the version of Self-hosted Retool remains fixed in the event you need to roll back or troubleshoot issues with your deployment, or maintain multi-instance deployments.
Identify your current version
Avoid downgrading to previous versions
Retool performs database migrations during each update of Self-hosted Retool. Downgrading to a previous version can cause unpredictable issues.
As you consider updating your Self-hosted Retool deployment, ensure you choose a newer version. You can identify your current version of Self-hosted Retool by logging in and clicking on the Help menu in the lower-right of the Organization dashboard.
Release notes
The following release notes detail the changes and updates for each version of Self-hosted Retool. Refer to Retool's Changelog for more information about new products and features.
v2.113
v2.113.3
Release notes for Self-hosted Retool 2.113. First released on March 24, 2023.
- New! Usage analytics are now available on Enterprise plans. See docs for setup instructions.
- Made RetoolDB available for self-hosted Retool
- Added a dropdown modal to show connection strings and usage metrics for Retool Database.
- Added an automatic refresh of the Retool Database resource schema to ensure the Query editor always uses the latest version.
- Added API version selection to Twilio resources.
- Added BitBucket configuration options to Source Control settings.
- Added columns to the Workflows tab to display more information.
- Added connection testing and debugging when configuring Firebase resources.
- Added Gitlab configuration options to Source Control settings.
- Added interactive state to the Query Library status bar.
- Added link to first-party documentation in the query editor when using a Stripe resource.
- Added option to resize Code blocks in Retool Workflows.
- Added status bar options to select an environment, and browse or revert the history of queries in the Query Library.
- Added the ability to upload CSVs into existing tables in Retool Database.
- Added the Code block in Retool Workflows to separate code execution and resource queries. Query blocks are now Resource query blocks.
- Fixed an issue in Retool Mobile where the clearValue() and resetValue() methods for the Image Input component would not function correctly.
- Fixed an issue where apps would redirect and load multiple times under certain conditions when using the latest runtime.
- Fixed an issue where a Retool app could not be downloaded using the Showcase share option.
- Fixed an issue where branding headers would overlap app content.
- Fixed an issue where certain JavaScript utility methods would not function correctly in Safari.
- Fixed an issue where custom CSS would not function correctly when using the latest runtime.
- Fixed an issue where Debug Tools would not function correctly when using the latest runtime.
- Fixed an issue where linting errors in code editors would appear blue on hover.
- Fixed an issue where MongoDB schemas in the Query Library would not load correctly.
- Fixed an issue where panning a workflow in the Retool Workflows editor would not behave as expected.
- Fixed an issue where preloaded JavaScript would not function correctly when using the latest runtime.
- Fixed an issue where Query blocks in Retool Workflows may not list all available resources.
- Fixed an issue where Query Library queries would not display the apps in which they're used.
- Fixed an issue where Source Control using AWS CodeCommit would not create commits with more than 100 files.
- Fixed an issue where the query editor would not function correctly if a selected endpoint path contained a comma.
- Fixed an issue where the State tab in the App editor would not display parsedValue for File Input and similar components.
- Fixed an issue where the Tabbed Container component would not function correctly when under certain conditions using the latest runtime.
- Fixed an issue where the Table component would incorrectly sort numbers if cells contained null values.
- Fixed an issue where the Table component would incorrectly sort numbers if cells contained zero and negative values.
- Improved autolayout of workflows in Retool Workflow.
- Improved behavior of REST API resources configured with shared credentials to match other resources.
- Improved block note editing in Retool Workflow.
- Improved debugging information for Redis resources.
- Improved error reporting when writing JavaScript code.
- Improved JavaScript linting to identify unnecessary use of {{ }}.
- Improved Source Control to automatically create pull requests when unprotecting an app or resource.
- Improved support for parameters when editing JSON in queries.
- Improved the information in the onboarding workflow in Retool Workflows.
- Improved the Navigation component to include a logo by default.
- Improved the Share options for Retool apps.
- Improved undo behavior when using the latest runtime.
v2.111
Release notes for Self-hosted Retool 2.111. First released on March 13, 2023.
Upgrading to v2.111
In v2.111, Retool updated resources to verify certificates in SSL connections by default. In order to keep applications from breaking, Retool added a database migration that opts resources into the Skip CA Certificate verification mode when needed. The affected resource types are Postgres, MySQL, Microsoft SQL, MongoDB, Redshift, Redis, Elasticsearch, Cassandra, and AlloyDB. For instructions on how to change your verification mode, refer to the Connect with SSL/TLS documentation.
2.111.9
- Added optional
DISABLE_IMAGE_PROXY
environment variable. When set to true, this prevents unauthenticated use of/api/imageProxy
. Retool recommends enabling this if you do not use public apps.
2.111.4
- Added a
current_user.locales
API to enable internationalizing Retool Mobile apps - Added ability to sync Query Library queries by name for multi-instance users
2.111.3
- Fix an issue where OAuth requests would ignore
NO_PROXY
when using theHTTP_PROXY
environment variable
2.111.2
- Improved drag and drop system to fix common pain points when moving components around the canvas
- Reduced scope of Source Control email alerts to only commit-related errors
- Removed release version tag in URL when sharing live version of app
- Added some resources missing from workflows
- Added a Note feature for workflows that allows users to comment their blocks
- Added
selection
field andsetSelection
API to the Rich Text Editor widget - Added namespaced table schemas to MySQL schema explorer
- Default setting SSL to
true
whenencrypt
is passed to MSSQL resource configurations - Reduced MongoDB max pool size from 100 to 10
- Added support for IAM auth for Athena resources
- Improved stability and throughput of Postgres SSH Connections]
- Enabled specifying a branch or environment with the retool embed API
- Improved performance of full and partial syncs in Source Control
- Fixed an issue where branding headers could cover app content
- Fixed the move to folder option for workflows
- Fixed MongoDB schemas in the Query Library
- Fixed layout bug in apps with both a header and sidebar in presentation mode
- Fixed reset branch modal to correctly paginate remote branches
- Fixed an issue with the environment switcher callout when dismissed
- Fixed environments scrolling issue when there are many environments]
- Fixed reset branch diffs in Source Control
- Improved workflows autolayout interaction
- Fixed bug which would cause public apps to render at 100% width regardless of the set maximum width
- Fixed an issue where typing in certain input components when in an app's header would scroll the page
- Fixed an issue withi Redshift IAM auth
- Fixed issues with history functionality in Query Library
v2.110
Release notes for Self-hosted Retool 2.110. First released on February 24, 2023.
2.110.8
- Added optional
DISABLE_IMAGE_PROXY
environment variable. When set to true, this prevents unauthenticated use of/api/imageProxy
. Retool recommends enabling this if you do not use public apps.
2.110.6
- Added a
current_user.locales
API to enable internationalizing apps
2.110.5
- Fix an issue where OAuth requests would ignore
NO_PROXY
when using theHTTP_PROXY
environment variable - Fixed an issue with time-based expiration for custom auth
2.110.4
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.110.3
- Fixed bug where apps were not rendering when using the new runtime
2.110.2
- Fixed a bug that caused public apps to render at 100% width regardless of the application's set maximum width
2.110.1
- Fixed refresh for Google resources
- Implemented following focus when dragging a block or arrow outside the edge of the canvas
- Fixed an issue where Select and Multiselect components could select disabled values with search
- Added support for IAM authentication for Amazon Redshift resources
- Removed non-functional cache options UI for queries that are imported from Query Library
- Added a feature that automatically expands the component tree on the left when you select a component in the canvas
- Fixed a bug preventing users from uploading certificates for TLS on Windows
- Fixed copying and pasting containers and modals with nested modules
- Added the
NO_PROXY
environment variable to allow some URLs to be opted out of usingHTTP_PROXY
- Added a toggle to prevent scroll from changing values in the Number Input component
- Fixed an issue where the variable editor was erroneously showing up for a GraphQL Resource in the Query Library
- Updated to use new Unified TLS options form for Cassandra
- Added a final stage to the unprotect and protect flow
- Added See token status to OAuth forms
- Added a loading state for the branch actions selection menu that appears after creating or renaming a branch
- Implemented a post deletion warning for open PRs on GitHub
- Updated supported AWS regions
- Restricted backend methods for source control when syncs are failing
- Added a feature that automatically sends emails when the jobs runner fails to deploy a commit; added a settings toggle for on-prem customers to opt out of this feature
- Fixed the height of Form components when they're dragged out from the create panel
- Added SSH Tunneling for Amazon Redshift
- Fixed navigation items when a theme is applied
- Added name tooltip over the component icon in the right panel
- Expanded the call sites where
HTTP_PROXY
is used - Updated the TLS frontend for gRPC
- Fixed HTML spacing issue when searching by 'created by'
- Fixed reloading a schema while switching between environments in the Query Library
- Fixed Source Control issue causing incorrect app history
- Fixed an issue where the Actions column of tables sometimes wouldn't show up
- Disabled protecting, unprotecting, and pushing changes to protected apps when deploys are currently failing
- Launched Source Control - Protected Resources which enables controlling changes to resources through pull requests in your source control provider
v2.109
v2.109 was skipped to stay in sync with Retool Cloud.
v2.108
Release notes for Self-hosted Retool 2.108. First released on February 9, 2023.
2.108.17
- Added optional
DISABLE_IMAGE_PROXY
environment variable. When set to true, this prevents unauthenticated use of/api/imageProxy
. Retool recommends enabling this if you do not use public apps.
2.108.16
- Fixed an issue where the data series for a Chart components didn't reset
2.108.14
- Fixed an issue with time-based expiration for custom auth
2.108.13
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.108.11
- Fixed an issue that prevented the
VERSION_CONTROL_LOCKED
flag from blocking resource editing in Git syncing
2.108.10
- Fixed sort logic for modal columns in the Table component when all values are numbers
- Fixed bug preventing usage of OAuth across instances
2.108.8
- Fixed URL hash bug for non-string types
2.108.7
- Fixed sorting for null cells in Table's DateTime formatted columns
2.108.6
- Fixed bug where list views with 0 or null rows rearrange components unexpectedly
- Fixed issues with Query Library loading and variable evaluation
2.108.5
- Improved stability and throughput of Postgres SSH connections
2.108.4
- Added option in the omnibox to copy app UUIDs to clipboard
2.108.3
- Added the Breadcrumb Navigation component. This component shows users how the current page is categorized or the path the user took to find the page.
- Added an option for users to add root authority and the client cert and key when configuring a REST API resource to use TLS.
- Added the
scrollIntoView
API to all components. - Added the ability to customize an app's maximum width within App settings.
- Improved the error message that's displayed when you try to create a resource with a name that already exists.
- Made general UI improvements. This included a clearer tabs design, reduced global navigation clutter, adding lighter borders and keylines, making section headings clearer, making the hierarchy between sections and elements clearer, and general fit-and-finish improvements across the app.
- Updated the frontend UI for SSL/TLS configuration to be consistent across resources.
- Fixed a bug where JavaScript queries were created instead of resource queries after a JavaScript query is selected.
- Fixed a case where the Sidebar would not render in small widths.
- Fixed a crash when linking to a container from a Steps or Tab component in an app with a Table and no other containers.
- Fixed an issue where icons in dynamic mode may fail to load.
- Removed the SSL host option from Postgres resource configuration.
v2.107
Release notes for Self-hosted Retool 2.107. First released on January 26, 2023.
2.107.12
- Added optional
DISABLE_IMAGE_PROXY
environment variable. When set to true, this prevents unauthenticated use of/api/imageProxy
. Retool recommends enabling this if you do not use public apps.
2.107.11
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.107.10
- Fixed sort logic for modal columns in the Table component when all values are numbers
- Fixed bug preventing usage of OAuth across instances
2.107.9
- Fixed URL hash bug for non-string types
2.107.8
- Fixed bug where list views with 0 or null rows rearrange components unexpectedly
- Fixed issues with Query Library loading and variable evaluation
2.107.7
- Improved stability and throughput of Postgres SSH connections
2.107.5
- Fixed an issue that caused copy and pasting containers or modals with modules inside to fail
2.107.4
- Fixed an issue that caused the Rich Text Editor component to crash with a React error
- Fixed an issue that caused gRPC resource queries with JavaScript within the JSON payload to fail
2.107.3
- Fixed bug where the Snowflake OAuth resource did not include a session role scope in the authorization URL
2.107.2
- Fixed an issue that prevented the
VERSION_CONTROL_LOCKED
flag from blocking resource editing in Git syncing
2.107.1
- Added workflow folders and permissions
- Added header to inspector dropdown menu
- Added a new option for List Collection types
- Added snap to grid and guidelines when dragging a block
- Added support for vertical orientation in the Steps component
- Added support for step captions in the Steps component
- Added tooltips on Select to remove confusion over when a query is triggered
- Added default custom button label for all new table widgets
- Added SSL certificates to Redis and Redshift
- Added auto/fixed height editor config for stepper component
- Added hover-able icons with tooltip that indicates whether fields support Markdown
- Added a timeframe customization option for the list view in the Calendar component
- Added support for certificates and verification mode to AlloyDB resource
- Improved Action Sheet look and feel
- Improved copyable text component
- Improved query naming when duplicating a query
- Improved mobile login flow
- Improved component search/filtering
- Improved autocomplete fields in the right panel to only surface in code blocks
- Improved the styling of the Retool user menu when rendered in the Sidebar
- Updated the styling for the event handler editors of the Navigation component
- Updated Slack icon
- Updated the UI for SSL options on the resource configuration form
- Upgraded the redis driver to version 4.5.1
- Fixed an issue where icons in dynamic mode may fail to load
- Fixed a crash when linking to a container from a Steps or Tab component in an app with a table and no other containers
- Fixed a bug with flipped image with border radius
- Fixed buggy behavior when inviting existing mobile users
- Fixed an issue causing jsquery to not run when referencing widgets in empty list views
- Fixed GCS uploads for workflows
- Fixed an issue where sometimes inspector popovers would overflow the top of the page
- Fixed viewport width to respect the app canvas max width
- Fixed the resize indicator from overlapping when resizing components with vertical controls
- Fixed overflown Table cells
- Fixed regression so customers can click behind modals again
- Fixed Go to App links from modules when included in public apps
- Fixed tooltip items overflow problem
- Fixed View in Bitbucket URLs generation
- Fixed MongoDB test connection timeout for the new driver
- Fixed Debug Tools to focus on the State of the currently selected component when first opened
- Fixed formatting for SQL queries with ternaries
- Fixed issue where users were unable to connect to Hubspot using OAuth authentication
- Removed support for GET and PUT commands with our Snowflake resource
v2.106
Release notes for Self-hosted Retool 2.106. First released on January 12, 2023.
Introduces nonbackwards compatible change for Protected Resources Beta
2.106 introduces a backwards incompatible change to Protected Resources. Retool instances on 2.105 or earlier cannot sync protected resources that are on instances on 2.106 or later. If you are running multiple instances of Retool and participating in the Protected Resources beta, ensure that your instances are all on the same version.
2.106.16
- Added optional
DISABLE_IMAGE_PROXY
environment variable. When set to true, this prevents unauthenticated use of/api/imageProxy
. Retool recommends enabling this if you do not use public apps.
2.106.15
- Removed logs of certain resource parameters in
dbconnector
2.106.14
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.106.13
- Fixed sort logic for modal columns in the Table component when all values are numbers
2.106.12
- Fixed URL hash bug for non-string types
2.106.11
- Fixed bug where list views with 0 or null rows rearrange components unexpectedly
- Fixed issues with Query Library loading and variable evaluation
2.106.10
- Improved stability and throughput of Postgres SSH connections
2.106.8
- Fixed an issue that caused copy and pasting containers or modals with modules inside to fail
2.106.7
- Fixed an issue that caused the Rich Text Editor component to crash with a React error
- Fixed an issue that caused gRPC resource queries with JavaScript within the JSON payload to fail
2.106.6
- Fixed bug where the Snowflake OAuth resource did not include a session role scope in the authorization URL
2.106.5
- Fixed bug in Retool Mobile where hidden elements still had a visual gap
- Fixed an issue that prevented the
VERSION_CONTROL_LOCKED
flag from blocking resource editing in Git syncing
2.106.2
- Fixed bug where users couldn't click behind modals
- Added support for gRPC queries
- Improved the appearance of the camera on Mobile
- Improved mobile login email entry experience
- Added the ability for users to create tables with predefined columns and randomly generated data
- Added a border to the component search bar when the widget picker is scrolled
- Added
input
tag to widgets so they search up in inspector search - Show Create a new resource on all resource query lookups
- Split the
client_cert_and_key
field for MongoDB intoclient_cert
andclient_key
- Allowed tooltips to trigger on disabled components
- Fixed a bug that caused mobile-only users to be redirected to the list of Retool Mobile apps rather than the specific app they were invited to
- Fixed bug in Retool Mobile causing crash when adding a widget under a Custom Collection widget
- Added the ability to import MongoDB configurations from connection strings
- Fixed bug where page description doesn't automatically update on change
- Fixed visual bug with overlapping tooltips
- Enabled automated refreshes for custom auth on loading an app
- Added default app name when duplicating an app
- Added the height property to the Status component
- Fixed issue where group folder defaults were removed if app permissions changed
- Fixed issue with tooltips for long app names
- Made the
currentState
field available on Status components - Improved onboarding app UI and patterns for new mobile users with no
onboarding_db
- Added the Icon Position property for Status component
- Fixed an issue with downloading files with no file extension
- Fixed an issue where tabbing away and back into Retool would clear record modal values
- Updated the Hubspot integration to use Private App Tokens instead of API keys, which have been deprecated
- Added support for event handlers to HTML component
- Added
overlayMinWidth
property for Dropdown Button, MultiSelect, Select, and Split Button components - Added text area component for Retool Mobile
- Added Sidebar frame to App editor
v2.105
Release notes for Self-hosted Retool 2.105. First released on December 19, 2022.
2.105.11
- Added optional
DISABLE_IMAGE_PROXY
environment variable. When set to true, this prevents unauthenticated use of/api/imageProxy
. Retool recommends enabling this if you do not use public apps.
2.105.10
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.105.9
- Fixed sort logic for modal columns in the Table component when all values are numbers
2.105.8
- Fixed an issue that prevented the
VERSION_CONTROL_LOCKED
flag from blocking resource editing in Git syncing
2.105.1
- Launched Source Control for Bitbucket
- Updated empty state UI for Select and Listbox components
- Added support for captions in the Stepper component
- Fixed a bug with mapped values in the Table component that would return
moment()
instances - Added support for scrolling to modals
- Allow item & i to be present when running a script
- Added support for filtering groups in the SCIM integration
v2.104
Release notes for Self-hosted Retool 2.103. First released on November 18, 2022.
2.104.7
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.104.6
- Fixed sort logic for modal columns in the Table component when all values are numbers
2.104.5
- Fixed an issue that prevented the
VERSION_CONTROL_LOCKED
flag from blocking resource editing in Git syncing
2.104.1
- Fixed MongoDB schemas in the query editor
- Fixed a bug that causes mobile-only users to be redirected to the list of Retool Mobile apps rather than the specific app to which they were invited
- Fixed an issue with downloading files with no file extension
- Add support for plain-text signature methods to REST API resources using OAuth 1.0
- Added support for vertically aligned stepper behind a feature flag
- Improved Commit Changes dialog to have a static height
- Improve hover interaction for Browse Apps dropdown in Retool Pill
- Updated loading state for PDFs to use spinner icon instead of text
- Fixed issue where double clicking on currently hovered row in grid would trigger modal to edit pinned column
- Fixed MongoDB schemas in the query editor
- Fixed issue that would prevent
resetValue()
from working correctly. - Only
data,
error, and
metadata` visible in autocomplete for blocks - Hide code preview so the result/error is visible on running the block
- Improved renaming behavior in the Code section of the App editor to be consistent with other areas. Deselecting an item will now save the new name.
- Added ability to archive your organization from the Organization > Advanced settings page
- Fixes the count in the Members selector bar for groups that have disabled users in them
- Turn on release management for all modules
- Add new behavior where URL hash will persist when switching from edit to preview mode
v2.103
Release notes for Self-hosted Retool 2.103. First released on November 18, 2022.
2.103.14
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.103.13
- Fixed sort logic for modal columns in the Table component when all values are numbers
2.103.12
- Fixed an issue that prevented the
VERSION_CONTROL_LOCKED
flag from blocking resource editing in Git syncing
2.103.11
- Fixed an issue which prevented JS queries from running when referencing widgets in empty List Views
2.103.8
- Added support for group filtering to our SCIM integration
2.103.7
- Fixed a bug when using environment variables in resource URLs
- Fixed connectivity issues with Hubspot connector
2.103.6
- Added an environment variable to control DBConnector's max pool size for Postgres
2.103.5
- Fixed issues causing queries with disabled properties to infinitely loop
2.103.4
- Improved code editor preview experience by updating component name
- Fixed text alignment for links that wrap to multiple lines
- Improved searching for queries in folders by automatically expand folders
- Changed Enable autocomplete control to Enable browser autofill for Text Input
- Fixed bug which caused single-letter domains in URLs to be incorrectly shown as invalid
- Improved the design of the query context menu
- Added support for OAuth 2.0 client credentials for OpenAPI
- Made the "Scripts and styles" modal resizable
- Transfers source control deployment to the new transactional deployment mechanism
- Removed blank space at the top of apps for users without edit permissions
v2.102
Release notes for Self-hosted Retool 2.102. First released on November 8, 2022.
2.102.13
- Fixed an issue where AWS CodeCommit API limits where hit when using Source Control
2.102.12
- Fixed sort logic for modal columns in the Table component when all values are numbers
2.102.11
- Fixed an issue where viewers without edit permissions would see a blank space at the top of their apps
2.102.9
- Fixed an issue where JavaScript queries would not run when referencing widgets in empty list views
2.102.8
- Added support for group filtering to our SCIM integration
2.102.7
- Fixed issues causing queries with disabled properties to infinitely loop
2.102.5
- Fixed user invites to show sign-in button for customers using Custom OAuth2
2.102.4
- Launched Source Control for AWS CodeCommit
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
v2.101
Release notes for Self-hosted Retool 2.101. First released on October 28, 2022.
2.101.8
- Added support for group filtering to our SCIM integration
2.101.7
- Fixed issues causing queries with disabled properties to infinitely loop
2.101.6
- Fixed issues with Protected Resources when resources have name conflicts or special characters
2.101.5
- Fixed user invites to show sign-in button for customers using Custom OAuth2
2.101.4
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.101.3
transactionalSourceControlDeployments
feature flag will also transfer source control incremental deployment to the new transactional deployment mechanism
2.101.2
- Added required field validation for saving and testing resource connections
- Improved the in-app resource configuration form to provide full-width inputs for better legibility
- Improved usability of REST resource URL prefixes by allowing them to be selectable and scrollable if long
- Fixed a bug where "Ctrl+C" would not copy table cell contents on Windows
- Added the ability to select and copy the version and build number in the Help Bubble
- Added clickable icons to slider component which increment and decrement the slider
- Fixed issue for Single Tag columns in Tables where option label would not render when option value was also set
- Fixed an issue where Browse Apps wouldn't appear in the Retool pill
- Fixed the Postgres resource to support providing a CA certificate without setting a client key
- Fixed the docs link in OAuth 2.0 helper text on resource configuration page
- Fixed a bug where the onboarding CTA was showing up after the tutorial is completed
- Removed requirement for a resource to be in edited in order to test connection on configuration page
- Improved the editor canvas to be a consistent color when zoomed out
- Improved default custom component logic
- Added the ability to copy parts of the text within Table cells instead of the entire cell
v2.100
Release notes for Self-hosted Retool 2.100. First released on October 10, 2022.
2.100.12
- Added support for group filtering to our SCIM integration
2.100.11
- Fixed issues causing queries with disabled properties to infinitely loop
2.100.10
- Fixed issues with Protected Resources when resources have name conflicts or special characters
2.100.9
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.100.7
- Fixed an issue where form data keys using strings for numbers generated arrays.
2.100.6
- Fixed an issue where Gitlab org, repo, and branch were not set from environment variables
2.100.5
- Fixed an issue that reset branch would unprotect other applications
- Made the
transactionalSourceControlDeployments
feature flag available in beta settings
2.100.4
- Updates HTTP header parsing dependency to prevent errors in parsing headers.
- Fixed an issue where some moment functions did not render correctly in table columns.
- Added the AWS RDS certificate bundle to the Node.js certificate chain (
NODE_EXTRA_CA_CERTS
). This allows connections to RDS databases to be trusted without additional configuration.
2.100.3
- Patched an SSRF-vulnerable endpoint.
2.100.2
- Added stronger password requirements.
- Improved CouchDB error messaging for Test Connection.
- Improved performance when using console.log in Debug Tools.
- Fixed error with MongoDB queries in the query library.
- Made the start block visible when opening the canvas.
- Paste in correct row in main frame if there are components in the sidebar.
- Fixed an issue where null values in form.initialData causes form value to be overridden.
- Widgets nested in containers will no longer be pasted at incorrect positions.
- Can now use alt+shift keys for Number Input widget.
- Fixed visual inconsistencies with the Browse Apps interface.
- Fixes pasting below selected widgets within nested containers.
- Fixed conditional and forEach blocks to render fullscreen when minimized.
- Prevents two widget context menus from showing between canvas and component tree.
- Added disabling of the resource modal test connection button if required fields are missing.
- Added
Form data key
to JsonEditor. - Fixed issue for Single Tag columns in Tables where option label would not render when option value was also set.
- Added a scrolling of diffs list by clicking on component name.
- Fixed field renaming of selected item using custom collection view.
- Improved consistent spacing between controls in the Header (zoom, panel toggles, etc).
- Fixed Wizard widget crashing when naming step with invalid name.
- Improves performance of panel resize in the Editor.
- Significantly improved evaluation performance for mapped fields.
- Improved row selection performance in the Table component.
- Fixed issue with falsy values rendering incorrectly when using the Tag column type in Table.
- Added an indicator to queries if results were not recently updated.
v2.99
Release notes for Self-hosted Retool 2.99. First released on September 22, 2022.
2.99.14
- Added support for group filtering to our SCIM integration
2.99.13
- Fixed issues causing queries with disabled properties to infinitely loop
2.99.12
- Added an environment variable to control DBConnector's max pool size for Postgres
- Fixed issues with Protected Resources when resources have name conflicts or special characters
2.99.11
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.99.10
- Fixed an issue where form data keys using strings for numbers generated arrays.
2.99.9
- Updates HTTP header parsing dependency to prevent errors in parsing headers.
2.99.8
- Patched an SSRF-vulnerable endpoint.
2.99.5
- Fixed bug with dropdowns where screen scrolls and dropdown does not open.
2.99.4
- Queries with manually provided options that are blocked by other queries now run after the blocking query finishes.
2.99.3
- Removed code that overrode
NODE_EXTRA_CA_CERTS
.
2.99.2
- Fixed Multiselect not showing the search input when filtering options.
- Allow users to copy parts of the text within table cells rather than the entire cell.
- Fixed bug where the existence of a directory inside
POSTGRES_CUSTOM_SSL_CERT_PATH
triggered an error. - Pasting below multiple widgets aligns to left of copy bounding box.
- Fixed autoscrolling for logs in workflow.
- Added keyboard shortcut for clearing Debug Tools: Timeline.
- Containers can now be pasted within other containers by selecting them.
- Fixed a bug where customers would see a module's components in the delete dialog box when deleting a container with a module.
- Fixed a bug where the
Data source
for a Tag (Dropdown) column in a Table would be incorrectly validated. - Improved editor usability, improved parity between mobile and web editor alerts.
- Fixed crashing when editing
Control query
event handlers in the mobile editor. - Added a Refresh event handler to Table widget.
- Fixed Debug Tools: Linting throwing errors for custom globals.
- Table's selected row and focused cell should no longer be able to get out of sync.
- Removed placeholder body for minimized blocks.
- Fixed visual inconsistencies when viewing an app in Public mode.
- Fixed set metadata function to be able to edit the fixed key metadata of GCS objects.
- Re-focuses source container after closing widget context menu to enable shortcuts.
- Pasting in main or no frame will default to the very left below the bottom-most component.
- Support sorting numerical values in Single Tag column type in the Table component.
- Fixed Multiselect not showing the search input when filtering options.
- Updated icons for Single Tag column type in Table.
- Fixed edit button wrapping div to be
items-center
. - Fixed
Download image
action for Image URL columns. - Changed Icon's minimum height to two rows. Added focus states for Icons that are clickable.
- Added a
Min lines
andMax lines
option to Multiselect. - Added History modal shortcut.
- Fixed user state being updated when the access level select component is unselected.
- Improved mobile editor experience when a mouse is connected.
View State
option now shows up in context menus such as right clicking on a component.- Fixed an issue where converting an App to Module could cause issues with queries in folders.
- Added a beta AlloyDB resource integration.
- Changed permissions page title to reflect the URL slug.
- Added a
scrollIntoView
API for most components. - Added zoom to Debug Tools: Timeline.
- Added the ability to select queries from Debug Tools: Timeline.
- Tables can now show up to 100 rows in auto mode, as well as use the scroll overflow option.
- Added support for CA Cert to MySQL.
- Fixed out of sync model for selected item when query fields change, e.g., renaming fields in a GraphQL query.
- Fixed an issue where Link List, Dropdown Button, and Split Button would show numbers as labels when no labels were provided.
- Added search functionality to Debug Tools: Timeline.
- Added the new Deployment Dashboard which serves as a hub for Source Control settings and allows users to see a list of Source Control deployments on their instance.
- Fixed debounced form submit event handler clearing form field before triggering.
- Reduced CPU Resources required for Proto Parsing at start-up.
- Improved Table keyboard navigation performance.
v2.98
Release notes for Self-hosted Retool 2.98. First released on September 16, 2022.
2.98.10
- Added support for group filtering to our SCIM integration
2.98.9
- Fixed issues with Protected Resources when resources have name conflicts or special characters
2.98.8
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.98.7
- Fixed an issue where form data keys using strings for numbers generated arrays.
2.98.6
- Updates HTTP header parsing dependency to prevent errors in parsing headers.
2.98.5
- Patched an SSRF-vulnerable endpoint.
2.98.4
- Removed code that overrode
NODE_EXTRA_CA_CERTS
. - Fixed an issue with Source Control syncs when using Protected Resources.
2.98.3
- Fixed a bug that caused an error when
POSTGRES_CUSTOM_SSL_CERT_PATH
is set to a directory that contains another directory. - Added the AWS RDS certificate bundle to the Node.js certificate chain (
NODE_EXTRA_CA_CERTS
). This allows connections to RDS databases to be trusted without additional configuration.
2.98.2
- Fixed Multiselect not showing the search input when filtering options.
- Fix error in previewing table column mapper result of an array column in HTML mode.
- Detects and prioritizes auth errors over other errors.
- Fixed Link rendering in Safari when there's only an icon.
- Added Support for IAM Authentication for MySQL.
- Added alert on editor when attempting to save a cyclic module dependency.
- Refinement of our color palette for Retool UI to refresh our design language.
- Fixed PWA experience when frame is displayed.
- Exposes IAM Auth for Postgres as an auth mode by default without a feature flag.
- Adds skip TLS checkbox for Redshift.
- JavaScript snippets will now see
null
values asnull
instead ofundefined
. - Autocomplete suggestions now show if optional chaining is used in a code editor.
- Copy/cut/paste shortcuts added to component tree.
- Page input component fully released!
- Fixed menu highlighting in the Query Library.
- Add a "hover preview" to the Date Range Picker.
- Fixed erroring out when action type is
Label + icon
and user switches to card view. - Fixed Steps labels color when on a dark background.
- Adds a 24px "Dense" row height option to Table.
- Fixed overflow of option label text.
- Improved generalizability of default mobile app.
- Fixes a visual issue when dragging and dropping into folders on the Explorer.
- Improved login screen UI.
- Pasting in main frame is selected will now paste in an expected position.
- Show block inputs only if block is not minimized.
- Make all js queries support async js for onprem.
- Added feature callout on home screen of those with Retool Mobile enabled.
- Updates logic of preview positioning.
- Fixed an issue where workspaces in menus did not highlight.
- The scanner component no longer causes tabs to act like a camera stream is open after it's been closed.
- Beta users of Retool Mobile on cloud can now see their mobile only users count in their invoices.
- Workflows users can now export and import their workflows via JSON.
- Launch nested list view for self-hosted Retool.
- Fix an issue causing switching views in editor to trigger queries that should only be manually triggered.
- Fix falsy
form.initialData
value not updating form field values. - Fixed disabled queries depending on other enabled queries blocking evaluation of dependent properties.
- Added ability to view the list of user groups that grant permission to a specific app
- Improved Date Range Picker component with more intuitive behaviors.
- Improved mobile login flow UI.
- Added a third screen to new mobile apps.
- Added tooltip to Scanner Single Scan toggle.
- Added callout for branch actions in debug status bar.
- Improved initial render performance of Table.
- Fixed "fx" mode of attachments in SMTP queries.
- Fixed getting service names.
v2.97
Release notes for Self-hosted Retool 2.97. First released on September 1, 2022.
2.97.13
- Added support for group filtering to our SCIM integration
2.97.12
- Fixed issues with Protected Resources when resources have name conflicts or special characters
2.97.11
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.97.10
- Fixed an issue where form data keys using strings for numbers generated arrays.
2.97.9
- Patched an SSRF-vulnerable endpoint.
2.97.8
- Updates http header parsing dependency to prevent errors in parsing headers.
2.97.7
- Removed code that overrode
NODE_EXTRA_CA_CERTS
. - Fixed an issue with Source Control syncs when using Protected Resources.
2.97.6
- Fixed a bug that caused an error when
POSTGRES_CUSTOM_SSL_CERT_PATH
is set to a directory that contains another directory. - Added the AWS RDS certificate bundle to the Node.js certificate chain (
NODE_EXTRA_CA_CERTS
). This allows connections to RDS databases to be trusted without additional configuration.
2.97.5
- Fixed a bug that prevented creating gRPC resources
2.97.4
- Fixed a bug where license checks were failing if
HTTP_PROXY
was set
2.97.3
- Fixed an issue where certain rows with fixed columns would not be selectable
- Deprected and removed current screen option from navigation selection
- Markdown link behavior in app settings now work as expected
- Fix link generation for AWS CodeCommit repos
- Fixed an issue causing query.error to be unavailable in error event handlers
- Fix an issue causing the
isFetching
properties to sometimes not update properly - Fixed a typo in the omnibox "No results found" experience
- Improved experience for users with no apps, who may think their apps just haven't finished loading.
- App selection editors now allow you to select the current app.
- Add option to skip TLS certificate validation for connectionString based resource config
- Fixed unintended separator, removed toggle with no effect
- Improve type casting for DateStrings for consistent
value
type - Adds support for number strings in
textBefore
- Fixes style editor labels when a value is set to a theme reference.
- Fixes Segmented Control when it renders options with no labels
- Fixed clickable area for Link
- Adds a default label mapper to mapped Dropdown Buttons and Split Buttons.
- Improved width editor understandability
- Fixed behavior of gap in collection view cell to match that of screen and container
- Fixed page input docs page accessible to be available from URL only
- Added [ elevated | flat ] segmented control for custom collection, and logic to handle elevated view.
- Improvements to the editor UI
- Editor selector boxes are now interior to the elements and do not add padding in the editor that is not present in the product.
- Improved experience of adding components
- Design improvements to existing UI to make the app more consistent and predictable
- Unifies and expands supported IFrame permissions for IFrame and Custom Component widgets
- Add a link to list view usage guide to the list view component docs
- Improved default container experience
- Added month and year dropdowns to the calendar picker component.
- Added contextual documentation for the
theme
global . - Add a warning to tabbed container upgrade about selectTab
- Fixed an issue causing module inputs to sometimes not work.
- Fixed a bug where resizing table columns would sometimes reorder the columns.
- Added Set up AWS CodeCommit button to Source Control
- Added
POSTGRES_SSL_REJECT_UNAUTHORIZED
environment variable to allow disabling SSL/TLS validation for self-signed certificates (defaults totrue
)
v2.96
Release notes for Self-hosted Retool 2.96. First released on August 12, 2022.
2.96.16
- Added support for group filtering to our SCIM integration
2.96.15
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.96.14
- Fixed an issue where form data keys using strings for numbers generated arrays.
2.96.13
- Patched an SSRF-vulnerable endpoint.
2.96.12
- Removed code that overrode
NODE_EXTRA_CA_CERTS
. - Fixed an issue with Source Control syncs when using Protected Resources.
2.96.11
- Fixed a bug that caused an error when
POSTGRES_CUSTOM_SSL_CERT_PATH
is set to a directory that contains another directory. - Added the AWS RDS certificate bundle to the Node.js certificate chain (
NODE_EXTRA_CA_CERTS
). This allows connections to RDS databases to be trusted without additional configuration.
2.96.10
- Fixed a bug where license checks were failing if
HTTP_PROXY
was set
2.96.6
- Improved CPU and memory utilization when parsing proto files
- Updated default value for
POSTGRES_SSL_REJECT_UNAUTHORIZED
fromtrue
tofalse
. This preserves pre-2.95 behavior when connecting to PostgreSQL databases that use a self-signed SSL/TLS certificate. Retool will now output a warning message when this variable is set tofalse
or when there is a connection error related to self-signed certificates.
2.96.5
- Fixed file system syncing so that it doesn't delete all other resources in a Retool instance when editing a resource.
2.96.4
- Enable Google sign-in option for Retool Mobile
- Fixed an array casting issue for v2 widgets
2.96.2
- Fixed a bug that passes opposite
Skip TLS Certificate Verification
value - Fixed auto-complete suggestions when writing JavaScript directly so that they won't suggest leading curly braces
- Fixed an issue causing
form.data
to include form fields without form data keys - Fixed an issue where queries with Run query only when manually triggered enabled incorrectly blocked execution of dependent queries
- Added
POSTGRES_SSL_REJECT_UNAUTHORIZED
environment variable to allow disabling SSL/TLS validation for self-signed certificates (defaults totrue
) - Improved menus in editor list items (e.g., menu items, event handlers) in the Inspector so that they only show up on hover
- Added initial value for Max lines for all new mobile apps
- Improved visual collection view layout
- Fixed hide table border for top toolbar tables
- Adds formatting options to the Grouped mode of Timeline
- Fixed tap area of text inputs
- Added an option to show or hide table border for table widget
- Added Freetool gating in app and resource editor
- Added Freetool gating for app history
- Improved validation for date and time formats
- Made Google sheets private by default
- Made Google Sheets User Auth generally available without flag
- Made Google Sheets Service Account Authentication generally available
- Fixed JS colors in tag column type
- Improved padding editor experience
- Fixed autocapitalization of first letter of password text input
- Improved hover states and selected menu items in the sidebar nav and Query Editor
- Updated styles of onboarding module and learn page to remove certain shadows and big borders
- Widget labels will be shown within the widget bounding box when there is not enough space in its container to display the label below the bounding box
- Unified and expands supported IFrame permissions for IFrame and Custom Component widgets
- Fixed default style editor labels for some properties
- Fixed drag and drop scroll behavior in the Code section of the Explorer
- Fixed typo in dynamic column setting
restricedEditingMapper
- Fixed how multiple views are displayed within a list view in the component tree
- Fixed an issue causing the table pagination bar to collapse when in server side pagination mode
- Fixed a case where certain labels in the Explorer weren't properly overflowing
- Fixed a few bugs with the widget resize dimensions tag
- Fixed an issue causing key value widgets to sometimes not render correctly in list views
- Improved notification layout experience
- Removed unnecessary notification
- Added year information to Releases view and Page Documentation view
- Fixed references to
self
in Run script event handlers when using Modules - Added API functions
showNextVisibleView
andshowPreviousVisibleView
for stepped containers - Fixed an issue with list view docs page
- Cleaned up Concurrent Editor Popover title
- Fixed JS colors in tag column type
- Fixed default Style editor labels for some properties
- Added private beta access for config variables
- Added the new Deployment Dashboard which serves as a hub for Source Control settings and allows users to see a list of Source Control deployments on their instance
v2.95
Release notes for Self-hosted Retool v2.95. First released on August 1, 2022.
Upgrading to v2.95
In v2.95, Retool upgraded the Node.js version it uses which may require you to set the
POSTGRES_SSL_REJECT_UNAUTHORIZED
environment variable. If your main PostgreSQL database uses self-signed certificates, you need to set this variable. It defaults totrue
but can be set tofalse
to prevent errors related to self-signed certificates in the certificate chain.
Note: The default value forPOSTGRES_SSL_REJECT_UNAUTHORIZED
was changed tofalse
in 2.95.8 to preserve pre-2.95 behavior.
2.95.13
- Improved how the
DATABASE_URL
environment variable handles connection strings whenPOSTGRES_SSL_REJECT_UNAUTHORIZED
is set.
2.95.12
- Patched an SSRF-vulnerable endpoint.
2.95.11
- Removed code that overrode
NODE_EXTRA_CA_CERTS
. - Fixed an issue with Source Control syncs when using Protected Resources.
2.95.10
- Fixed a bug that caused an error when
POSTGRES_CUSTOM_SSL_CERT_PATH
is set to a directory that contains another directory. - Added the AWS RDS certificate bundle to the Node.js certificate chain (
NODE_EXTRA_CA_CERTS
). This allows connections to RDS databases to be trusted without additional configuration.
2.95.9
- Fixed a bug where license checks were failing if
HTTP_PROXY
was set
2.95.8
- Improved CPU and memory utilization when parsing proto files
- Updated default value for
POSTGRES_SSL_REJECT_UNAUTHORIZED
fromtrue
tofalse
. This preserves pre-2.95 behavior when connecting to PostgreSQL databases that use a self-signed SSL/TLS certificate. Retool will now output a warning message when this variable is set tofalse
or when there is a connection error related to self-signed certificates.
2.95.7
- Fixed file system syncing so that it doesn't delete all other resources in a Retool instance when editing a resource.
2.95.6
- Fix Authentication Modal for Snowflake and old Salesforce resources
- Disable default behavior from autoselect on enter key press in select widget
2.95.5
- Added the
POSTGRES_SSL_REJECT_UNAUTHORIZED
environment variable to control validation of SSL/TLS certificates when connecting to the main PostgreSQL database. This variable defaults totrue
, but can be set tofalse
to prevent errors related to self signed certificates in the certificate chain.
2.95.3
- Added support for Retool's new Free plan, which lets developers and teams up to five use Retool indefinitely, with the ability to use apps in end-user mode.
- Source Control Deploy Dashboard is now available in beta. This new dashboard makes it easier to configure Source Control settings, monitor deployments, and view logs. You can enable the feature in your organization's Beta tab.
- Apps now include a Header frame on the Canvas by default, allowing you to build a custom header for your application. Header frame was an opt-in feature in previous versions but is now the default for new and existing apps. An app's Header frame only appears in end-user mode if it contains at least one component, such as Navigation. Learn more about these functionality changes and the expanded options for custom branding in the docs.
- New authentication methods to securely connect a Google Sheets resource. You can now authenticate with Google using:
- User OAuth (beta): OAuth-based authentication with individual user credentials. This is currently in beta for Self-hosted Retool v2.95+ and can be activated from the Beta tab in your organization settings.
- Shared OAuth: OAuth-based authentication with shared user credentials.
- Service account authentication: Authenticate with a service account tied to a Google Cloud project.
Fixes and Improvements
- Fixed an issue allowing plugins with invalid names to be created
- Added year information to app history view
- Fixed bug in DateRange to update formattedValue when textBetween is edited
- Fixed an issue causing updates to not execute when they depend on certain queries
- Enable progress circle to show values less than 0 and greater than 100
- Allow parentheses and longer domain suffixes in URL validation
- Added more specific type names for plugin autocomplete hints
- Added a new environment variable NUM_WORKERS to allow specifying the number of workers to dedicate to the Retool instance
- Updated search in the Code section of the Explorer to autofocus on click
- Fixed a bug where module input queries could be imported into the Query Library and subsequently cause the Query Library to freeze
- Hide the horizontal scrollbar on Multiselect when tags don't wrap
- Added support for sending
body
with custom authentication browser requests - Updated the Navigation component to open links in a new tab when holding CMD/Ctrl
- Improved contrast in Contrast text colors
- Fixed the vertical alignment of the label on Text Area and Multiselect
- Added support for custom branding (logo) to the 2FA page
- Added Helper text to the Text Area component
- Enable users to configure whether Table components have a box shadow. Disabled by default on new tables, enabled for old tables to maintain backwards compatibility
- OpenAPI query editor now displays parameter descriptions passed in
schema.description
in tooltips - Improved search tags for components list
- Enable auto-indexing
- Moved the
changeSet
andrecordUpdates
to the top of the table model browser - Added "Invalidate query cache" option in query menus in app editor
- DebugTools will now show newlines in string literals and console log statements
- Fixed an issue preventing reordering of columns when some columns are frozen
- Fixed "Reset state" for temporary state when the state explorer is open
- Allow drag to reorder table columns with "Apply to column order" on
- Added a Format option to the grouped mode of Timeline
- Upgraded backend to Node.js 16
- [Beta] Added option to connect to Postgres using AWS IAM authentication
v2.94
Release notes for Self-hosted Retool v2.94. First released on July 14, 2022.
2.94.13
- Patched an SSRF-vulnerable endpoint.
2.94.12
- Fixed a bug that could cause Source Control syncs to fail when using Protected Resources in certain cases
2.94.11
- Improved CPU and memory utilization when parsing proto files
2.94.10
- Fixed file system syncing so that it doesn't delete all other resources in a Retool instance when editing a resource.
2.94.9
- Fixed tooltips in containers when a dark theme is applied
- Fixed an issue where a Table given with empty column-based data would not display the columns
- Improved spacing of server-side pagination controls
- Fixed a performance issue affecting large apps with certain pattern of layouts
- Allow table columns with Apply to column order on to be dragged to reorder
- Changed Checkbox default event handler from "True" to "Change"
- Cursor-based, server-side-paginated tables can now say how many rows they contain explicitly
- Autocomplete suggestions will now pull a preceding
!
into the curly braces if appropriate - Turned off the
RUN_QUERY_BY_UUID_METADATA
logs by default but can be turned back on with theENABLE_RUN_QUERY_BY_UUID_METADATA_LOG
environment variable - Fixed some unexpected drag-and-drop issues in the editor
- Fixed an issue with SCIM based group mapping which was preventing syncing of Retool's default groups with Okta
- Fixed vertical alignment of text inside Table Modal cells
- Event handlers can now be added to handle canceling changes in the Table component
- Fixed circular dependency errors when referencing widgets in list views with dynamic indexes
- Fixed
retoolContext.appUuid
in public apps - Editors receive guidance when adding rows to a table with no editable columns
- Number Input now exposes its value during editing as
inputValue
- Added option to allow deselecting for Select component
- File Inputs can now parse Excel dates
- Added new keyboard shortcuts to move and resize components by five rows at a time
- Added pattern validation to Text Area and Editable Text Area
- OpenAPI resources now refresh access tokens when responses fail (any non 2xx response)
- Added a new option to file inputs to support appending new files instead of replacing the current selection
- Captions are no longer hidden when no label is provided
- Added an
onLoad
event to the Video component - Added a "click" event to the Statistic component
v2.93
Release notes for Self-hosted Retool v2.93. First released on June 24, 2022.
2.93.14
- Patched an SSRF-vulnerable endpoint.
2.93.13
- Fixed an issue with Source Control syncs when using Protected Resources
2.93.12
- Improved CPU and memory utilization when parsing proto files
2.93.11
- Fixed file system syncing so that it doesn't delete all other resources in a Retool instance when editing a resource.
2.93.9
- Added "Allow deselect" option for Listbox components
- Added a
sid
property tocurrent_user
in the global context - Fixed cursor-based pagination with scrollable Tables in some cases
- App headers now collapse to fit their contents if they are shorter than 5 rows
- Fixed custom styles for Modals in embedded apps
- Added helpful messages for Google Sheets service account resource settings
- Fixed a z-index issue affecting Tables with Modal columns within nested modals
- Added auth modal for custom auth flow
- Fixed an issue where Date Time could show the wrong popover based on the focused subfield
- Fixed an issue where dynamic height rows in Table would sometimes overlap
- Consolidated "Control query" and "Trigger query" Event Handler types
- Fixed a bug where Select and Multiselect would show the clear button even when no value was selected
- Fixed styling issues with empty state text on Listbox and Multiselect Listbox
- Fixed custom auth modal behavior to let users authenticate with more than one custom auth resource
- Modules no longer have a place to input custom CSS
- [beta] Added option to connect to Google Sheets with a service account
v2.92
Release notes for Self-hosted Retool 2.92. First released on June 08, 2022.
2.92.16
- Patched an SSRF-vulnerable endpoint.
2.92.15
- Fixed an issue with Source Control syncs when using Protected Resources
2.92.14
- Improved CPU and memory utilization when parsing proto files
2.92.13
- Fixed file system syncing so that it doesn't delete all other resources in a Retool instance when editing a resource.
2.92.12
- Fixed an issue where some queries would run indefinitely.
2.92.11
- Fixed an issue with custom logo upload in Branding settings.
2.92.10
- Allow editors to enter the editor via URL when VERSION_CONTROL_LOCKED is set to true.
2.92.9
- Initial release of Self-hosted Retool 2.92
- Added support for HTTP Digest authentication to the REST API resource
- Fixed an issue where some components would shift around when upgraded to new versions
- Fixed alignment between folder name and icons on the dashboard homepage
- Fixed an issues with Tabbed Container components nested in List View components
- Fixed the PostgreSQL connector so that connections are not held open unnecessarily
- Fixed an issue where Custom Authentication modals would not display for users
v2.91
Release notes for Self-hosted Retool v2.91. First released on May 11, 2022.
2.91.19
- Patched an SSRF-vulnerable endpoint.
2.91.18
- Improved CPU and memory utilization when parsing proto files
2.91.17
- Fixed an issue with parsing recursive proto files
2.91.16
- Fixed an issue where some queries would run indefinitely.
2.91.15
- Fixed an issue with custom logo upload in Branding settings.
2.91.14
- Allow editors to enter the editor via URL when VERSION_CONTROL_LOCKED is set to true
2.91.13
- Fixed an issue where Custom Authentication modals would not display for users
2.91.11
- First release of Self-hosted Retool v2.91.
- Resources can now be protected and checked in to your connected Retool Source Control Git repository. This enables resources to be synced across any Retool instances configured to pull from the repository, just like Protected Apps. To enable the beta, go to the Settings > Beta tab and select Protected Resources. This feature is under active development, so give it a try and let us know what you think.
- Added support for additional GCP BigQuery regions
- Added support for Snowflake form generation
- Added support for Elasticsearch, MongoDB, MSSql, Cassandra, Postgres, and Redis users to explicitly opt out of TLS certificate validation
- Added a range of valid values for the Rating component (between 0 and 20)
- Improved the Multiselect component to scroll to the last selected item, rather than the first
- Fixed an edge case where MSSql query errors were not surfaced to users
- Fixed various bugs and polished the MongoDB query editor
- Fixed the Postgres connector so that connections are not held open unnecessarily
- Fixed incorrect overlays when certain components were placed in nested Modal components
- Fixed the default item name of new options created for the Split Button and Dropdown Button components
- Fixed the Table component's cell colors when using a theme
v2.90
Release notes for Self-hosted Retool v2.90. First released on May 11, 2022.
2.90.18
- Patched an SSRF-vulnerable endpoint.
2.90.17
- Fixed an issue with parsing recursive proto files
2.90.16
- Fixed an issue where some queries would run indefinitely
2.90.15
- Fixed an issue with downward syncing in Source Control when an empty app is present.
2.90.14
- Fixed an issue where Custom Authentication modals would not display for users
2.90.10
- Improved the LDAP group mapping feature so that you can map a single google group to multiple retool groups (using the LDAP_ROLE_MAPPING env variable)
- Fixed the downloaded users CSV so that the last active date always appears
- Added
validate
andclearValidation
APIs for the Form component - Improved selection in the Table component such that selected rows will now be selected and deselected correctly while filtering
- Fixed the Date Time component so that the Date subfield correctly persists its value
- Fixed alignment in the query editor for REST API queries
- Added a new "Reset state" action to the component context menu
- Fixed an issue where the Select component would unexpectedly reset the input value when connected to a dynamic datasource
- Fixed an edge case where scrolling a Select in a modal would sometimes scroll the application
- Added a new group permission to allow view only users to view unpublished releases of apps when release management is enabled
v2.89
Release notes for Self-hosted Retool v2.89. First released on April 27, 2022.
2.89.18
- Patched an SSRF-vulnerable endpoint.
2.89.16
- Improved drag and drop behavior on Safari for the Image component
- Fixed
theme
in the model browser so that it shows changes correctly - Added the ability to save a query even when it's running
- Improved query creation from event handlers so that it default creates the last selected query type
- Fixed the Table component's "select all" menu for checkbox selection
- Fixed an edge case where transformers would not run on page load
- Improved the experience of resizing components
- Fixed the Date Time component so that the Date subfield correctly persists its value
- Fixed an issue where the Select component would unexpectedly reset the input value when connected to a dynamic datasource
- Fixed an edge case where scrolling a Select in a modal would sometimes scroll the application
- Fixed an issue where Custom Authentication modals would not display for users
v2.88
Release notes for Self-hosted Retool v2.88. First released on April 13, 2022.
2.88.16
- Patched an SSRF-vulnerable endpoint.
2.88.13
- We've added support for multiple environments, making it easy to build, run, and test applications to suit your development needs. Now, you're not constrained by only Staging and Production: admins can configure as many environments as they need under Organization Settings > Environments.
- Fixed visual height Switching height from auto to fixed now preserve visual height
- Added support to control which menu items are highlighted in the Navigation component
- Fixed dynamic height components so that they don't shift the canvas layout when deleted
- Increased the size of handles on components to make resizing easier
- Improved drag-and-drop such that moving a component into a Container component will preserve its width as much as possible
- Fixed action buttons for the Table component so that they fire on first click in editor mode
- Fixed the editor canvas so it does not change it's size when dragging components
- Fixed component selection so that hidden containers stay visible when you're selecting any component inside of them.
- Fixed the Slider component and the Range Slider component's outputs when the value is over 1,000
v2.87
Release notes for Self-hosted Retool 2.87. First released on April 01, 2022.
2.87.14
- Patched an SSRF-vulnerable endpoint.
2.87.11
- If your organization uses GitLab you can now take advantage of the features provided by our Source Control integration. Retool's Source Control enables branch-based editing on Retool applications. It allows organizations to manage changes using pull requests and syncs their applications across multiple instances of Retool. Follow our guide to setting up source control with GitLab to get started.
- We have introduced the new HTML Component so that you can quickly add custom HTML and sandboxed CSS to your apps. This component is perfect for use cases that require a little bit of custom UI without the full scripting capabilities that Custom Component provides.
- We have also introduced a standalone Icon component with over 3,400 icons to choose from! It supports alignment options, alt text for accessibility, and optional click event handlers.
- Dynamically set the icon based on any state from your application to give helpful visual clues:
- Added a new "Auto" height option for Modules, allowing them to resize themselves to fit their contents
- Added the ability to dynamically set whether a Table component supports selecting multiple rows
- Added markdown syntax highlighting to tooltip fields in the Inspector
- Added the ability in edit mode to select components when a Container component is in a loading state
- Adjusted the amount the Container component grows when dragging in child components
- Improved the editing experience when working with the Container component
- Fixed layout issues with dragging hidden components
- Fixed an edge case where style editor colors would occasionally display incorrectly
- Fixed an issue where you could not programmatically call selectRow in Table components with multiple selection enabled
- Fixed the Table component's "sort change" event handlers which were temporarily not firing
- Fixed event handlers in the Split Button component and the Dropdown Button component when options are hidden
- Fixed the confirmation message when deleting queries, transformers, and temporary state
- Fixed the Table component's "Add new row" action so that it no longer overwrites the first row in your Table when uploading an image
- Fixed the focus JavaScript APIs for the Listbox and Multiselect Listbox components
- Fixed app URL parameters when they reference components
- Fixed an edge case in the options list editor where items would be duplicated in Manual mode
- Fixed the Dropdown Button component so that it is square when it only has an icon and no text
- Fixed validation for icons configured via the options list editor in Mapped mode
- Fixed the Date Time component so that it is not editable in readonly mode
- Fixed the Form component so that it doesn't clear its fields if the submit event fails
v2.86
Release notes for Self-hosted Retool v2.86. First released on March 16, 2022.
2.86.15
- Patched an SSRF-vulnerable endpoint.
2.86.14
We strongly recommend updating to 2.86.14+
Versions 2.86.12 and 2.86.13 included a regression which broke new and existing Postgres resources that connect using SSL. Please upgrade to 2.86.14 if you are experiencing these issues. Git Syncing (with Github) is failing on versions before v2.86 due to a change in SSH encryption requirements on GitHub. Please upgrade to v2.86.14 or above to fix broken Git Syncing functionality. No other SCM providers (Gitlab, Bitbucket, etc.) are affected.
- We've brought the power and flexibility of our canvas components–like the new Rating component or the rebuilt Date Time component–to our Table with over 20 new column types to choose from.
- These column types provide new and expanded functionality to display numeric values in the Table component. Like the Number Input component on the canvas, you can control decimal places or support any 3-letter currency code. You can also display a star rating of your numeric values with the Rating type.
- Display formatted emails using the new User Email column type. If the email address has an associated Retool account, you'll get better formatting out of the box: including the email, the user's profile picture (if applicable, otherwise their initials), and full name.
- Display multiline text easily with the new Multiline column, or take advantage of full GitHub Flavored Markdown support in the Markdown column. Use the HTML column type to render HTML in your table cells.
- Display dates and times, and automatically handle time zone in the Table with "manage time zone." "Display" time zone controls how time is displayed to your users, while "Value" time zone controls how it's encoded, so you can do things like have the display time zone follow your user's local browser, but encode the time in UTC! The new Date, Time, and Date Time columns also support an expanded list of formatting strings.
- Display images from a URL or allow your users to upload an image directly with the Image Link and Image Upload column types.
- The new Single Tag column type replaces the existing Dropdown column type: when your user edits the cell like above, they'll see the familiar dropdown. You can configure the data source that populates the list of options in the dropdown: it defaults to the unique column values, but you can also choose a query, transformer, or just JS. When your user selects an option, it will be rendered as a tag! Tag colors can be automatic or configured with JS. In the next few weeks we'll be rolling out the Multiple Tag column type, so your users can similarly select multiple options from a Multiselect dropdown.
- Additionally, check out the new JSON column type (instead of Object), the Link type, and the rebuilt Modal and Button types.
- We've added better overflow handling so that truncated cells will expand on hover, and multiline cells will also grow on hover to show more of their content. The editing experience also got a revamp: there's a new indicator for edited cells in the top right corner of the cell, and we've made it easier to directly edit Boolean and Rating cells.
v2.85
Release notes for Self-hosted Retool v2.85. First released on March 02, 2022.
2.85.31
- Patched an SSRF-vulnerable endpoint.
2.85.28
- We rebuilt our theme editor, which allows you to create themes that control the look and feel of applications across your organization. Under your organization settings, you'll find Themes, where you can create new themes and modify existing ones.
- The new editor includes improved descriptions of all the style properties and a revamped, live-updating preview–so you can see how your color selections will impact your apps 🎨. We also introduced several new settings, like status colors. You can also now configure text colors: components will automatically use the most readable option of the light and dark colors you choose!
- Themes are available on Business or Enterprise plans. We'll soon be adding even more properties–so be sure to drop us any feedback in the community forum.
- This week we're highlighting some major improvements to containers including support for multiple views, collapsible containers, and new presets for multistep flows and tabs.
- Multiview makes it easy to swap between different groups of components within a single Container. Add any number of views via the Inspector, each with a grid to drag components onto. The current view can be controlled with event handlers, the
setView
API, or conditional logic in the default view settings. - You can enable multiview on any Container, but we're also launching presets for common multiview patterns.
- The redesigned Tabbed Container comes pre-configured with a Tabs component linked to a multiview Container. Tabs can now be moved and customized independently, and individual tabs can be disabled or hidden.
- The brand new Stepped Container provides a quick and easy way to build beautiful multi-step flows. Like Tabbed, it comes pre-configured with the new Steps component linked to a multiview Container, along with next and previous Buttons.
- Container and Form now include a "Show body" setting, along with new APIs to show/hide the header, body, and footer. Get started quickly with the new Collapsible Container, which includes a Toggle Button wired up to expand and collapse the body of its Container.
- Multiview makes it easy to swap between different groups of components within a single Container. Add any number of views via the Inspector, each with a grid to drag components onto. The current view can be controlled with event handlers, the
- To learn more about all of these new features, check out our Containers docs. And if you have any feedback, we'd love to hear from you in our community forum.
- Simplified the "query success" setting in the query editor
- Improved autocomplete for Form and Text components
- Improved styling of disabled components to improve readability
- Fixed keyboard navigation for disabled components
- Added more information, like the type of the value, in the SQL editor when SQL is evaluated
- Fixed File Dropzone, File Button, and File Input in List Views
- Added an option to Table components to "Disable user selection." If enabled, selection can only happen via the editor inspector or JS APIs. Click and arrow keys are ignored.
- Improved List View rendering performance
- Fixed the
columnMappers
property on the Table component to update when data changes - Added the ability to hover over the extra indicator (e.g. "+10") for the Tags component to see the other tags
- (enterprise only) Fixed the keyboard shortcut
CMD+SHIFT+P
(CTRL + SHIFT + P
) so that it doesn't drop you into a non-editable protected branch - Added the keyboard shortcut
CMD+/
(CTRL+/
) which will show and hide all hidden components - Postgres resources now support custom root certificates
- Fix to re-enable usage of resources without
ENCRYPTION_KEY
being set - Fixed a bug that caused table edits with an active filter to affect the wrong row
v2.84
Release notes for Self-hosted Retool v2.84. First released on February 16, 2022.
2.84.24
- Patched an SSRF-vulnerable endpoint.
2.84.21
- Our new component directory (retool.com/components) allows you to quickly browse or search through all of our components, see examples of different configurations in action, and dive into expanded API docs for component properties, methods, and events.
- Each component has multiple real-world examples to explore different functionality, from labels and captions to validation and styles. Each example also includes the corresponding settings and values if you want to try them out in your own app.
- As you check out the new component docs, we'd love to hear any feedback from you in our community forum.
- Added a default value option for the Toggle Link component
- Improved the ordering of the Table component inspector fields
- Improved the responsiveness of code editors
- Fixed the grid visibility toggle–⌘+Shift+G (Ctrl +Shift+G)–so that it persists across sessions
- Fixed a layout issue for containers in edit mode when using Safari
- Improved the resources dropdown in the query editor so that you can now also search by resource type
- Added the "not equal" and "not in" operators to the Firestore query editor
- Added a new keyword currentColumn that editors can use when building with the Table component
- Fixed the ability to reorder rows for the Key Value component
- Added the ability to configure whether Markdown links open in a new tab via the app settings menu
- Fixed Snowflake queries using OAuth so that they properly prompt for authentication
- Fixed a bug that caused table edits with an active filter to affect the wrong row
v2.83
Release notes for Self-hosted Retool v2.83. First released on February 02, 2022.
2.83.34
- Patched an SSRF-vulnerable endpoint.
2.83.30
- We now have 15 style options so that you can fully customize the look of your table, and we've also refreshed the default styles. In the "Style" section of the Table component inspector, there's plenty more you can do now, like:
- Configure row color dynamically with any JavaScript condition (e.g. {
{ currentRow.sales > 100 ? 'green' : 'red' }}
), rather than setting background colors on each column. - Control column border visibility – we've updated default styles to remove column borders and reduce visual noise, but their visibility is configurable. (For backwards compatibility, Table components created before this change will have borders on by default.)
- Quickly set up zebra striping by choosing a color for the "Alternate row background" style.
- Control header, toolbar, and cell styles with more fine-grained options for text, background, and accent colors. We've also revamped our column sorting and edited cell indicators and made their styling configurable.
- Configure row color dynamically with any JavaScript condition (e.g. {
- As you style your tables, let us know if you have any feedback or feature requests in our community forum.
- Improved error messages for when a resource type isn't supported in the form generator
- Add
loading
andloaderPosition
options to Link component - Changes Button loading indicator to a more standard spinner
- No longer test connections when creating or editing resources
- We've made it easier to find the most commonly used column types when designing tables
- Cleaned up styles for empty Table components
- Display
DBCONNECTOR_QUERY_TIMEOUT_MS
instead of 120000 on timeout input - The Form generator now throws more accurate errors when a resource is not supported
- OAuth auto-refresh now work with fields using
RETOOL_EXPOSED_
variables - "Auto" type columns in the Table column editors now have a new icon
- Users can now modify resource and app permissions for groups when
SAML_SYNC_GROUP_CLAIMS
is enabled - Fixed the rendering order of background colors in the Table component.
- In-app resource modal no longer closes automatically after save.
- Table components now correctly show pagination info when the "Show add new row," "Show custom button," or "Show refresh button" options are true and the respective buttons are visible
- Fixed bug regarding time-based authentication for resources
- Performance improvements with rendering template strings and sandbox evaluation
- Autocomplete for non-private properties with underscores
- Reduces the space between the header and main app content.
- Certain table column inspector fields will now autocomplete widget properties
- Improved error messages for the PDF Viewer
- Added the ability to clear the File Input component
- Added ability to upgrade the following deprecated components:
- Time picker
- Date range picker
- Multiselect
- Select
- Text
- Deprecated Chart, Statistic, and Upload components can no longer be added to apps. Please use their new counterparts!
- Fixed endless fetching bug with Plotly component
- Fixed a bug that caused table edits with an active filter to affect the wrong row
v2.82
Release notes for Self-hosted Retool v2.82. First released on January 19, 2022.
2.82.47
- Patched an SSRF-vulnerable endpoint.
2.82.42
- We're making a ton of improvements to our Table component! First up, the recent changes to our columns inspector:
- The column list is more compact than before, with better drag and drop so you can easily reorder your columns. Additionally, you can now see all of your column types at a glance.
- To change whether or not a column is editable, you can now do so directly from the column list—instead of having to manually open each column one by one.
- The settings for each individual column have also been reorganized, making it easier to find the settings you need and giving you more room to write code.
- As we continue to make more changes to the Table component, let us know if you have any feedback or new feature requests in our community forum.
- Introduced accent color styling for Table component cells
- Introduced vertical column borders as a setting in the Styles section for the Table component, and removed them by default on new Tables
- Introduced new display behavior for tables with editable columns. If the majority of columns in a Table are view-only, we highlight editable columns with a pencil icon. If the majority of columns are editable, we highlight view-only columns with a lock icon.
- Added new style editor options to the Button Group component
- Fixed autocomplete in event handler code editors
- Fixed Select and Listbox component deselection when items are marked as required
- Fixed the setValue API for Select components with the "Allow custom value" option enabled
- Fixed the Date Time component to correctly display times that fall on DST boundaries
- Fixed documentation in the model browser (left-hand panel)
- Improved performance when deleting containers with many children
- Improved performance of the editor when interacting with input components
- Improved loading of custom components
- Fixed a bug that caused table edits with an active filter to affect the wrong row
- Fixed a bug that prevented authentication dialog from appearing upon app load
2.82.40
- Fixed endless fetching bug with Plotly component
2.80
Release notes for Self-hosted Retool v2.80. First released on November 16, 2021.
2.80.17
- 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.
- For example, in a component like Select or Multiselect, you can set the labels to dynamically update to the capitalized values with
{{ 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.- Added the ability to enable/disable release management across an organization from Advanced Settings
- Fixed form generation to set labels correctly for checkboxes
- Fixed unexpected layout shifts in some apps while dragging/resizing
- Fixed Google Datastore ordering options
- 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
ortimestamptz
instead oftimezone
- Added an option to configure text size on the Divider component
- Added support for an optional label on the File Dropzone component
- Improved performance when querying the audit log
- Added support for a
focus
state for the Editable Text and Editable Number components - Fixed query loading indicators in presentation mode
- Added a transition to the Date and Date Time calendar
- Fixed the bounding box for Container components with children
- Fixed the context menu so it closes when you click outside of it
- Fixed analytics instrumentation triggers for modules
- Fixed CSRF token validation issue.
v2.79
Release notes for Self-hosted Retool v2.79. First released on November 10, 2021.
2.79.16
- You can now view, edit, and create new resources without leaving your Retool app!
- To create a new resource, select the "create a new resource" option from the top of the resource dropdown in any query. You can configure a connection and immediately query any of our 40+ supported database and API types, including Postgres, MongoDB, and any REST API or GraphQL.
- To view or edit a resource configuration, click the "edit resource" button from the selected resource in your query. For example, you can view the name of the default bucket of an S3 resource, add staging credentials to a Postgres database, or add a new header to your GraphQL resource—all without leaving your app! Any changes to the resource persist across all Retool apps in your current environment.
- We're rolling out this new functionality this week. Share any feedback or suggestions for new resource types in our community forum!
- 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.
- 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.
- Fixed public apps in Incognito mode for Chrome
- Fixed automatic SQL formatting, which was incorrectly adding additional spaces
- Fixed the "body query type" toggle for REST API's with custom auth
- Fixed Image component layout in Firefox
- Improved performance on page load
- Fixed Deprecated components inside modules so that they are no longer upgradable inside parent apps
- Fixed "Reload queries" and resource custom auth so that they do not invalidate Module outputs
- Fixed label wrapping for Checkbox Group, Radio Group, and Switch Group
- Fixed how default properties are transferred when switching between certain components
- SCIM API now accepts emails with uppercase letters
- Fixed hiding RETOOL_EXPOSED environment variables in REST API query headers
- Fixed CSRF token validation issue.
- Fixed an issue with JBDC connections in pools
- Fixed an issue to allow for text selection for readonly editable targets
v2.78
Release notes for Self-hosted Retool v2.78. First released on October 27, 2021.
2.78.14
- We've overhauled two of our most popular components: Select and Multiselect. Like our new Input components, they have powerful new functionality including:
- Expanded style editor support
- Control over label position, alignment, and wrapping
- More robust validation (e.g. min/max items for Multiselect)
- Support for adding text and icons in the prefix and suffix
- An optional tooltip with GitHub flavored markdown
- Both components support full keyboard accessibility. For example, you can now use arrow keys to move between individual selected items. These components also have tons of new configuration options including:
- Overlay height: set the maximum height of the dropdown
- Combobox mode: set whether or not the component has an input field to support searching by text
- Selection indicator: control whether the dropdown should show a checkmark on the selected item(s)
- Empty state: set a message to display when the component has no options provided or when no options match the search term
- Disabled: provide an array of values that should be rendered disabled or disable the entire component
- Fixed "body query type" for REST APIs with custom authentication
- Fixed label wrapping for Checkbox Group, Radio Group, and Switch Group components
- Added the ability to customize the appearance of the Retool user menu on a per-app basis
- Fixed the
recordUpdates
andchangeSet
attributes of the Table component to only clear when a bulk update is successful - Fixed the Calendar component so that custom event properties are not lost when events are modified
- Added support for sharing JIRA resource credentials between users
- Added an option to configure text size in Editable Text and Editable Number components
- Fixed default text color when the canvas has a dark background
- Fixes CSRF token validation issue
- Fixed hiding RETOOL_EXPOSED environment variables in REST API query headers
v2.77
Release notes for Self-hosted Retool v2.77. First released on October 14, 2021.
2.77.21
- The Table component is now scrollable! Scrollable tables are a great way to allow your users to quickly explore data.
- To try it out, select the new "Scroll" option in the Table component inspector. "Scroll" supports all of the Table component's "Pagination" options (e.g. server-side pagination) out of the box. To learn more about working with Tables in Retool, check out our documentation.
- We'll be shipping other highly requested Table features and bug fixes in the coming months. Visit our community forum to make a new request or add your support for existing ones.
- The new Avatar and Avatar Group components allow you to easily represent users in your app.
- Avatar allows you to display an image with an optional label and caption. The image URL will default to the current user's profile photo (a new property,
{{ current_user.profilePhotoUrl }}
) and you can optionally set fallback text for when there isn't a url available — if that text looks like a user's full name, we'll render just their initials. Choose from a selection of avatar size options, extra small (16px) to extra large (48px), and customize label, alignment, and more! - Avatar Group displays several avatars together. Configure the maximum number of avatars to display, and the last avatar will display "+N" when there are more. Like our new input components, these also offer expanded style editor support.
- Avatar allows you to display an image with an optional label and caption. The image URL will default to the current user's profile photo (a new property,
- Fixed automatic text color when the canvas has a dark background
- Fixed the JIRA resource so that it automatically refreshes its token
- Improved CSV parsing capabilities for File Input components
- Fixed the minimum height setting for components
- Fixed "Run when manually triggered" GraphQL queries that were incorrectly switching back to "Run when inputs change"
- Improved the experience of creating a new folder, switching your context to the newly created folder
- Added support for multi-line text in Buttons
- Improved performance for Listbox and MultiselectListbox components when using
searchTerm
- Fixed some cases where code was not autocompleted in the right order. For example, when searching for "next", hasNext would show up before next.
- Improved validation to skip disabled, readOnly, and hidden components
- Fixed tree construction for Source Control resulting in appropriate merge conflicts
- Fixed hiding RETOOL_EXPOSED environment variables in REST API query headers
- Fixed an issue preventing custom columns in a table in a module from rendering
- Fixed issue with Analytics instrumentation triggers in editor and preview mode for non-public apps
- Fixed
pgbouncer
compatibility issue caused by default values forPOSTGRES_STATEMENT_TIMEOUT
andPOSTGRES_IDLE_IN_TRANSACTION_SESSION_TIMEOUT
v2.76
Release notes for Self-hosted Retool v2.76. First released on November 10, 2021.
2.76.29
- We've overhauled Editable Text and added a new Editable Number. Like all of our new inputs, these offer brand new configuration options, built-in and custom validation rules, and expanded style editor support. These components were also built with accessibility and data density in mind.
- The Editable inputs display static text that can be edited on click. In edit mode, Editable Text has all the same powerful, new functionality of our Text Input component, including: configurable prefix/suffix text, a prefix/suffix icon, read only mode, and more. In addition, Editable Number supports the functionality of the Number Input component, including currency support, percentage formatting, and control over decimal places and padding zeros.
- All keyboard inputs–like Text Input, Number Input, Editable Text and Number, Currency, and more–can now optionally configure a tooltip that is visible below the input only on focus:
- Like the regular tooltip, helper text supports GitHub flavored markdown.
- Added a keyboard shortcut–
⌘ + D
(CTRL + D
)–to duplicate a component on the canvas - Added a keyboard shortcut–
?
–to show a list of all of the other built-in editor shortcuts (like⌘ + D
!) - Added a "Hide submit button" option to the JSON Schema Form component
- Fixed vertical alignment of multiline labels on the Checkbox and Switch components
- Added a "Row Select Change" event handler for the Table component
- Adjusted default hover and active colors for Button
- Fixed automatic text color for components inside of the Header frame
- Updated read-only input components to hide the optional clear button
- Simplified the empty state for Container components
- Fixed a delay with updates to dynamic height components
- Removed an incorrect error message when selecting components in the same container
- Fixed an edge case where Text components could be rendered at the wrong height
- Added support for freezing action button columns to the left or right of the Table component
- Added the ability to add the currently viewed folder to your favorites list
- Fixed focus, hover, and disabled styles for the clear button on input components
- Added support for
null
values for sliders in the JSON Schema Form component - Fixed rendering of short Listbox components with labels
- Added
lastReceivedFromResourceAt
attribute to queries to track when the query response was last received from the resource - Added the current page index and total number of rows to the footer of the Table component
- Fixed label width default to be 40% instead of 33%
- Added a new option, "show top bar," to IFrame which allows you to optionally show a customizable title, and adds two actions: refresh and open in a new tab
- Fixed Listbox and Multiselect Listbox rendering with duplicate values
- Added autofill for app names when importing an app
- Improved the component search experience by autofocusing the search field when opening the Insert pane
- Improved the loading state for the Table component
- Fixed an edge case where renaming a component didn't rename references to the component
- Added workspaces, audit logs, and data editor to the "powered by Retool" menu
- Updated AWS assume role help text to display the correct backend name
- Added the
POSTGRES_STATEMENT_TIMEOUT
environment variable, which defaults to 10 seconds (on-prem only) - Enforced a database constraint for analytics integrations to prevent an invalid database state.
- Fixed tree construction algorithm for Source Control resulting in reduced and accurate merge conflicts
- Fixed an issue preventing custom columns in a table in a module from rendering
- Fixed hiding RETOOL_EXPOSED environment variables in REST API query headers
v2.75
Release notes for Self-hosted Retool v2.75. First released on September 15, 2021.
2.75.21
- We've added 5 new and improved options for input components in the Inspector (right-hand panel), including:
- Read only: read only inputs are focusable and selectable but cannot be modified. They look the same as normal inputs.
- Label width: set the width of the label as a percentage of the component width (%), pixels (px), or grid columns (col).
- Decimal places: set the maximum number of digits after the decimal, and optionally pad trailing zeros.
- Allow null value: Number Input components can now have an empty state of null instead of 0.
- Show clear button: Number Input components can now optionally show a clear button.
- If you want further configuration options for any of our components, drop us a note at [email protected]!
- Fixed label width default to be 40% instead of 33%
- Fixed migrations to respect DATABASE_URL
- Fixed a regression that would cause the editor to crash when deleting temporary state variables
- Improved the app homepage search results to show what folders apps are in
- Updated undo/redo shortcuts copy to be platform-specific
- Fixed the "hide reset button" switch on the Wizard component
- Fixed default values and Change events for Range Slider
- Fixed the editor such that it always shows the most up to date version, even if an earlier release is published
- Added a new event handler action type to set / clear local storage key/value pairs
- Added a tooltip to improve readability of long app names for the "Go to app" event handler action type
- Added a toggle to the Number Input to allow null values
- Fixed the Tags component so that it can reference other queries/components (e.g. {{ .. }}) when setting tag titles
- Fixed an issue preventing custom columns in a table in a module from rendering
v2.74
Release notes for Self-hosted Retool v2.74. First released on September 02, 2021.
- All admins will now be able to assign two different permission levels for any given resource: (1) "use," which allows an editor to write queries with that resource and (2) "edit," which additionally allows an editor to modify the resource's configuration.
- Previously, admins had minimal control over permissions to resources — any resource permission granted at a group level would allow members of that group to modify the configuration of the resource. We know configuration for some resources can be sensitive and complex to change, so we've shipped these new permission levels to give admins more control over their user's access.
- Additionally, to allow editors to create new resources or delete existing ones, admins can assign a group to have "universal access" at the "edit" level. As always, a "viewer" of an app (e.g. no edit permissions) can still view and use an app that leverages a resource for which they do not have explicit permissions granted.
- When your query succeeds or fails, you can now trigger other queries, control components, call additional APIs, and more–all using event handlers!
- For most Retool apps you've built in the past, you've probably set up the "After this query runs" triggers. For example, let's say you have a query,
selectUsers
, populating a Table component; if you insert a new record to theusers
table, you probably want to re-run thatselectUsers
query so that your Table is up to date:- However, anything more complex–showing a notification, controlling components (e.g. opening a modal)–previously required creating and wiring up a JavaScript query, and writing custom code.
- A few months ago, we rolled out new event handlers to all of your components. We're now replacing the old query triggers, and bringing those powerful event handlers to your queries! You can configure any number of event handlers to run when your query succeeds or fails (e.g. on success, show a notification to your end user and open a modal to prompt a new workflow).
- Anything you can do with Retool's JS API (e.g.
query1.trigger()
,modal.open()
,utils.showNotification(...)
) you can do with event handlers. If you do have a need to write some custom JavaScript, it's even easier than before. You can just use the "run script" event handler and write your code, without creating and wiring up a new query. - We're rolling out 9 redesigned and rebuilt components, including fully overhauled, existing components (Button, File Button, Link) and brand new components (Tags, File Input, File Dropzone, Listbox, Multiselect Listbox).
- Just like the input components we released a few weeks ago, these offer brand new configuration options, built-in and custom validation rules, and expanded style editor support. These components were also built with accessibility in mind.
- Listbox and Multiselect Listbox allow you to display a list of selectable item(s) to your end users. You can dynamically set the default selected item(s) and/or disabled item(s). There's also built-in support for fuzzy search on the values or labels, all you have to do is set the search term (e.g.
{{ textinput1.value }}
). - There are plenty more settings you can configure, even down to the empty state when no options match your search term. Additional functionality includes: an optional Tooltip with support for GitHub flavored markdown, custom validation (e.g. min/max items, custom error messages), event handler support, and more!
- The refreshed Button component and new Outline Button component have lots of new functionality. For example, you can dynamically set the loading state (e.g.
{{ query1.isFetching }}
) to show a loading animation and disable interactivity for your users while your query is running. - You can switch between a regular, Solid Button and an Outline Button directly in the "Style" section of the Inspector for either component–you'll also find more advanced style editor support.
- Lastly, we have a new Link component that supports additional configuration like prefix/suffix icons and an optional Tooltip. You can use the Link component with any event handler, like opening a webpage or another Retool application.
- We now have 2 new ways for your end users to browse and upload files–File Dropzone and File Input–and we've rebuilt and redesigned File Button. All of these now support single or multiple file uploads, and have 3 consistent properties to interact with and reference elsewhere in your app: (1)
value
: an array of base64 encoded strings for the selected file(s) (2)files
: an array of file metadata, like when it was last modified, the file name, type, and size (3)parsedValue
: an array of JS objects or arrays that Retool automatically parses from uploaded files (Excel, JSON, CSV, TSV and text files are supported).- They also support custom validation (e.g. min/max file size, custom error messages), prefix/suffix text and icons, an optional Tooltip, and so much more functionality.
- Lastly, we've also added a new Tags component, a presentational component typically used in apps for things like categorization. It now has dynamic and automatic height: growing as you add additional tags as well as support for an optional Tooltip.
- Added the ability to see tables that are related to your query in the query editor's schema browser
- Added a Front integration
- Added advanced editor features to the Text Area component, including autocomplete, autocapitalization, and spell check.
- Added support for exploring queries and transformers in the model browser (left-hand panel) while actively editing a different query or transformer
- Added support for using self-signed certificates with MongoDB connection string
- Updated default component IDs to use camelCase (e.g.,
checkboxGroup1
) - Added a
change
event handler to BoundingBox component - Added module versioning support behind a feature flag. Contact support ([email protected]) if you would like this enabled for your organization.
- Fixed previewing apps with multiple versions so that we now support previewing any published release, as well as the current working version
- Fixed Folders and Apps so that they're sorted consistently
- Fixed an edge case with query trigger migrations for the new query event handlers
- Fixed an edge case where the "Go to app" event handler wouldn't successfully navigate
- Fixed the custom header background color so that it doesn't show unneeded toasts
- Fixed an issue where you couldn't add widgets to modals that close when clicking outside (not ready yet)
- Fixed a regression that would cause the editor to crash when deleting temporary state variables
- Fixed the editor such that it always shows the most up to date version, even if an earlier release is published
- Fixed an issue where transformers do not run on page load if they depend on disabled queries
- Fixed local storage dependencies such that values nested inside a third level now trigger updates correctly (e.g.
localStorage.values.x.y
)
Add a width field to v2 label editors (still feature flagged) - Fixed a rare edge case when deleting Query Library queries would cause apps to throw errors when saving
- Fixed issue with running migrations on boot when using DATABASE_URL parameter for configuring PostgreSQL connection
- Fixed an issue with tables with columns set to Allow overflow
- Fixed an issue where retoolContext.environment didn't update with toggle
- Snowflake now respects the DBCONNECTOR_QUERY_TIMEOUT_MS environment variable
- Fixed issue where {{ self }} was being overwritten in table mapped columns
- Fixed bug with clearing Number Input widget
- Fixed bug with onboarding getting stuck when saving an SQL query
- Fixed issue with the label width
- Fixed bug with some components not rendering the correct height
- Added an iframe component
- Fixed bug with event handlers encountered when upgrading from 2.72 or 2.73
v2.73
Release notes for Self-hosted Retool v2.73. First released on August 15, 2021.
2.73.24
- You can now run JavaScript with side effects directly inside of an event handler without having to create and manage a separate JavaScript Query.
- Previously, if you wanted to run JavaScript with side effects—like triggering a query
query1.trigger()
or downloading datautils.downloadFile(…)
— you had to create a new JavaScript query, write your code, save your query, and wire up a "Trigger query" event handler. - To streamline this common workflow, you can now write custom JavaScript code directly in your event handler with the new "Run script" action. You can utilize Retool's full JavaScript API that allows you to control components (e.g.
modal.open()
,table.selectRow(index)
,input.setValue(…)
), show notificationsutils.showNotification(…)
, set temporary statestate.setValue(…)
, set key/value pairs in local storagelocalStorage.setValue(…)
, and more. Check out this guide to learn more about what you can do with JavaScript in Retool.
- Previously, if you wanted to run JavaScript with side effects—like triggering a query
- Switching between edit and preview is now much snappier! When building an app in Retool, you'll often jump back and forth between editing your app and previewing what it looks like for your end users. We've just shipped some big performance improvements to the path:
- Performance is always top of mind for us. In an effort to make every app load faster, we've leveraged code splitting to reduce the size of our main Components bundle by 63%. Now, your apps only pay a performance cost for the components you use. We have several engineers focused on burning down a list of similar improvements to app performance–drop us a note at [email protected] if there are parts of Retool you want us to focus on!
- Testing is now available in beta! You can add tests to increase confidence in updating and maintaining your Retool apps. See https://docs.retool.com/docs/testing for more info.
- Added support for table column header to be affect by column alignment setting
- Added a keyboard shortcut ⌘ + U (CTRL + U) to toggle the right panel (Inspector) open/close
- Added an option to customize the 'no rows found' text when a table is empty
- Added a new option to Tabbed Container to preserve UI state across hidden tabs
- Improved the dialog when deleting multiple components to show child components that will also be deleted
- Improved the query selection dropdown for event handlers to include the name of the resource for a given query
- Improved performance on initial render of the canvas and Container components
- Improved performance of apps with many dynamic height components
- Added the ability to set custom content-type on Google Cloud Storage upload query
- Added a submit event to the Notes component
- Simplified the History modal further by removing an unneeded entry type
- Added
appName
toretoolContext
so you can dynamically access the name of the current app (e.g.{{retoolContext.appName}}
) - Added the ability to copy table names from the database schema
- Added a button to the Users page for admins to download their user list as a CSV
- Added
change
event handler toBoundingBox
component - Added a Front integration
- Fixed keyboard shortcuts incorrectly triggering while using an Email input in the editor
- Fixed
localStorage.setValue
so that it will no longer trigger queries that depend on other keys in local storage - Fixed rendering of tooltip for app shell to also ensure there are not already any components in the header frame
- Fixed overflow issues with long before/after text in Text, Number, and Password inputs
- Fixed cases where drag-and-drop could get blocked by
iframe
s on the canvas - Fixed unexpected layout shifts on some apps with multiple Text components
- Fixed an edge case where the "Go to app" event handler wouldn't successfully navigate
- Fixed an edge case with the new query event handlers so that old query triggers are properly migrated
- Fixed Folders and Apps so that they're sorted consistently
- Fixed background license checks to work again
- Fixed autocomplete so test functions are not autocompleted outside of the test editor
- Snowflake now respects the DBCONNECTOR_QUERY_TIMEOUT_MS environment variable
- Fixed committing changes to apps under Source Control in large repositories
- Added module versioning support behind a feature flag. Contact support ([email protected]) if you would like this enabled for your organization.
- Fixed issue with running migrations on boot when using DATABASE_URL parameter for configuring PostgreSQL connection
v2.72
Release notes for Self-hosted Retool v2.72. First released on August 05, 2021.
2.72.37
- We've removed the default Retool header from end user mode, giving you full control over your app's presentation. User-specific actions have moved to a new location, and we've introduced a new sticky header frame, along with a Navigation component for building your own custom headers.
- If you're currently using the Branding feature, read our migration guide to learn how to start using our improved Header frame.
- The canvas area is now split into two frames: Header and Main. Put any component into the Header — including the new Navigation component — and your app will have a sticky header.
- The new Navigation component allows you to configure a list of menu items and submenus. Each item can open another app, link to a URL, run a query, and more. You can also add a logo, control alignment of the menu items, and style it all via the Style Editor. With modules, you can even reuse your Navigation across multiple apps.
- We're rolling out 15+ input components, redesigned and rebuilt from the ground up. These include a full overhaul of components like Text Input and Checkbox, along with completely new inputs like Segmented Control and Range Slider.
- Each component offers brand new configuration options, built-in and custom validation rules, and expanded style editor support. We've also built these components with accessibility in mind, with features like focus states, full keyboard and screen reader support, and automatic text color selection.
- Along with these new components, the grid is also getting major upgrade: we've introduced a significantly reduced row height that allows for greater data density and more fine-grained layout control. The height of all new components is automatic and dynamic: growing as you add options to a Radio Group or type in a Text Area, and enabling validation errors to be rendered inline.
- These components support their original functionality along with new features like:
- Text Input
- Simplified inspector with many options split out into separate components
- Configurable prefix and suffix text or icons, autofill behavior, and more
- Text Area (formerly part of Text Input)
- Controls for number of lines and auto-grow as the user types
- Optional character count display along with min/max validation
- Number Input (formerly part of Text Input)
- Automatic formatting based on the locale in your browser settings
- Support for any 3-letter currency code, with the ability to override default display
- Optional increment/decrement steppers, alignment options, and more
- Inputs preconfigured to get you started more quickly
- Email and URL configurations of Text Input
- Currency and Percent configurations of Number Input
- Select inputs
- Segmented Control
- Radio Group
- Checkbox and Checkbox Group
- Switch (formerly Toggle) and Switch Group
- Password Input
- Optional show/hide password toggle
- Regex validation and autofill types
- Sliders
- Slider for selecting single value
- Range Slider for selecting a start and end value
- Rating, with support for 3 different icon sets — stars, hearts, and smileys
- In addition, all new inputs support:
- APIs to set, clear, and validate an input's value via an Event Handler or JS query
- Tooltips with GitHub Flavored Markdown and styles based on the app theme
- Control over label position, alignment, and wrapping
- Validation rules including custom logic and inline error messages
- Text Input
- You can find all of these components in our new compact and reorganized component list that features improved search. Old versions of these inputs have been deprecated, but existing instances will not be affected. If you want to continue using them, turn on the "Deprecated components" switch on the Beta settings page to see the "Deprecated" section in the components list.
- Added additional logging when syncing applications
- Fixed the "Protect app" modal to properly dismiss on branches other than
main
- Fixed a rare edge case when protecting an already protected app
- Improved publishing and unpublishing releases
- Improved performance of evaluating dependencies (e.g. component/query references) in apps
- Fixed a rendering issue with the user menu for embedded apps
- Improved performance of component interactions by 2x for applications with a large number of components
- Improved initial render time for apps with many input components
- Improved resources page to sort by name
- Added a OneSignal integration
- Fixed S3 file downloads of non-binary type files
- Improved REST API queries to respect the
DBCONNECTOR_QUERY_TIMEOUT_MS
setting - Added the ability to input Redis commands in raw format, similar to
redis-cli
- Added a warning when additional configuration is needed to connect a Google Sheets resource
- Added the ability to automatically paginate queries to Stripe
- Added support for Snowflake OAuth at the user level
- Added the ability to dynamically add a table name in Snowflake query GUI mode
- Adds more space for current branch in the branch viewer.
- Added a 'Submit feedback' option to the help menu where you can send product feedback directly to the Retool team
- Added a keyboard shortcut ⌘+J (CTRL + J) to show/hide the query editor
- Add a
DISABLE_INTERCOM
environment variable to disable chat support and enable email support instead - Added additional user metadata to the Releases and History modal
- Added the ability for editors to set a description for module inputs
- Added the ability to change your first and last name in Account Settings
- 10+ different design polish improvements
- Added a tooltip on components to render error messages in context
- Enabled search by component type in the Event Handlers component dropdown
- Improved code editors to maintain the cursor position of in-line editors that are popped out
- Improved error messages on Retool components. No more generic errors!
- Added a Divider component to create a horizontal rule
- Fixed transformers and analytics in the query sidebar so that they can be deleted and duplicated
- Fixed an issue where loading spinners weren't visible for some components
- Datepicker component min and max now will use UTC time when 'display in local timezone' is not selected
- Fixed Form's ""clear after submission"" option with new input components
- Fixed spacing around components inside of a List View
- Fixed editor keyboard shortcuts when certain input components have focus
- Fixed event handlers for generated Forms
- Fixed arrow keys to use the new row height when moving a component up or down
- Fixed the order of menu items in the Navigation component after using the inspector
- Fixed CMD+C to copy text in an input component in editor mode
- Fixed an issue in the inspector when selecting multiple components
- Fixed
NaN
value in the Number Input component after manually the current input - Added new file utility methods to the JavaScript API: parseXLSX(), parseCSV(), parseJSON()
- Fixed incorrect links to apps in the Releases and History modal
- Fixed previewing apps with multiple versions. You can now preview any published release, as well as the current working version.
- Fixed an issue where syncing many apps under Source Control at once would trigger a secondary GitHub API rate limit.
- Fixed an issue where URL parameters weren't preserved when navigating to the editor
- Fixed an issue where deleting a query from the Query Library caused certain applications to hang
- Fixed an rare crash in applications due to custom authentication
- Fixed an issue connecting to the internal PostgreSQL database using the
DATABASE_URL
environment variable. - Improved performance for applications using local storage across multiple tabs.
- Fixed unexpected layout shifts on some apps with multiple Text components
- Fixed an issue syncing apps under Source Control with similar names
- Snowflake now respects the DBCONNECTOR_QUERY_TIMEOUT_MS environment variable
- Fixed committing changes to apps under Source Control in large repositories
- Fixed issue with running migrations on boot when using DATABASE_URL parameter for configuring PostgreSQL connection
v2.71
Release notes for Self-hosted Retool v2.71. First released on July 21, 2021.
2.71.22
- Let's face it, writing more than a few lines of code inside of Retool isn't usually a great experience: code inputs are small, there aren't any line numbers, and the text wrapping can be aggressive. This week, we're excited to ship a new movable, resizable editor window that can be popped out from any code input. Whether you're writing a custom component, editing JSON for a Chart component, or writing a long SQL query—it's finally much nicer to write multiline code in Retool.
- We've completely overhauled the undo/redo system in the Retool editor. You can now reliably undo and redo nearly any action, including:
- Creating, renaming, or deleting components and queries
- Editing queries or component properties
- Any layout operation (including copy and paste)
- The History modal lets you view changes and revert apps to a prior state. Until now, the list included many entries (e.g. "minor changes") that made it difficult to pinpoint exactly what had changed. We've added human-readable descriptions for every action and consolidated entries, making it easier than ever to identify your changes and jump back to the right moment.
- Fixed S3 file downloads of non-binary type files
- Fixed transformers and analytics in the query sidebar so that they can be deleted and duplicated
- Fixed self-hosted trials that were expiring at the incorrect date
- Added the ability to
⌘+click
(CMD+click
) orCTRL+click
on a query, component, or state name inside{{ }}
to see its value in the model browser - Improved load times for a subset of our components
- Fixed Snowflake queries to correctly estimate their size
- Improved permissions such that only users with the universal 'write' resource access can create new resources
- Added a new section to settings for debug info (e.g. environment variables, single sign-on), available on the Enterprise plan
- Fixed Navigation components so that they can run queries when used inside a Module
- (Source Control) Improved the commit changes modal to display changes since the last commit vs. from the main branch
- (Source Control) Fixed the 'protect page' modal to properly dismiss on branches other than 'main'
- (Source Control) Improve autogenerated PR descriptions
- Fixed a bug where a JavaScript Query would run repeatedly if it is passed into a module as input and then triggered inside that module.
v2.70
Release notes for Self-hosted Retool v2.70. First released on June 29, 2021.
2.70.22
- Great code editing ergonomics are near and dear to our hearts at Retool. We've recently added a few improvements that make writing JavaScript in Retool just a little bit smoother.
- Inline code evaluation previews now display the type of the returned value. This is handy for quick reference when working with properties that can accept multiple types:
- Retool now also supports and correctly lints ES2020 features, like the nullish coalescing operator and optional chaining. You can replace clunky expressions like
{{ (localStorage.values||{}).userStatus ? localStorage.values.userStatus : 'Unavailable' }}
with a simple{{ localStorage.values.userStatus ?? 'Unavailable' }}
. - Lastly, we've improved Retool's autocomplete to properly infer JavaScript types and offer the available methods and properties, even when chained. If using inline JSDoc comments, the defined parameters will also show up the autocomplete menus.
- Added ES2020 support to Retool's code linter
- Added the returned value type to inline code evaluation previews
- Fixed a memory leak issue causing unneeded query results to be retained
- Fixed undo/redo when renaming components
- Added support for the
insertMany
action type for MongoDB queries - Adds links to GitHub commits in the History tab for Source Control commits.
- Added text color settings to the Rich Text Editor component
- Added support for the
style
attribute in Text component content - Added support for setting the client ID and secret for JIRA resources
- Added a way to restrict which user groups can run a query via a query's "advanced" tab in the query editor
- Added a permission group setting to grant access to the audit log for non-admins
- Added the ability to set a custom content-type on a S3 upload query
- Added the ability to browse MongoDB collection schemas in the query editor
- Added more defaults to MongoDB fields in the query editor
- Added the ability to name Protected App branches before creating them
- Fixed the distanceMatrix endpoint for the Google Maps integration
- Added the ability to automatically format JS queries
- Fixed alignment of profile photos in permissions settings
- Added 20+ app edit descriptions for the history tab in "Releases and history"
- Upgrade the Presto JDBC driver to v350; Support the source connection parameter.
- Fixed a bug where we were incorrectly checking license keys for airgapped deployments
- Added a new page–Environment Variables–in Settings for debugging (Beta)
- Fixed visual bug in app protection workflow if using a default branch other than Github default
main
- Removed checkbox for toggling Source Control downward sync
v2.69
Release notes for Self-hosted Retool v2.69.
2.69.18
- In this latest stable build, we
- Added support for Source Control to be compatible w/multi-instance deployments (without Git Syncing!).
- Added support for creating and managing Releases for apps under Source Control.
- Enabled editors to reset a protected app to the state of any remote branch, allowing you to preview others' branches or preview branches where conflicts were resolved offline
- Made UI improvements across the board, such as naming a branch before creating it. We handled tricky edge cases w/Github API, squashed several bugs, and more! You'll also notice a dedicated "Actions" menu for all source control related options, and clickable commit tags in your app's version history.
- Added an improved configuration page, that allows you to stop downward "sync" at any time and verify that your Github integration is configured correctly.
- Be sure to check out our Getting started guide, Recommended Workflow, and how-to on Migrating from Git Syncing!
- When you're writing a query in an app, you may realize that it would be useful in many apps. Rather than copy/pasting your work, you can now extract your resource query to the Query Library and import your new, reusable query wherever you need it! We'll automatically convert JS expressions to query variables, so that each app can configure its own inputs. To learn more about reusing queries with the Query Library, check out the docs.
- Removed notifications from appearing on every copy and paste operation
- Updated S3 read queries to return base64 encoded strings for binary/octet-stream content-type payloads
- Fixed Table's Button column type so that it can evaluate references to other components when setting the "disabled" field
- Fix a bug where users would be stuck in an authentication loop for certain types of custom auth flows.
v2.68
Release notes for Self-hosted Retool v2.68.
2.68.24
- Event handlers: Think of a Retool event handler just like
addEventListener
in native JS oronChange
in React. Before, components could only trigger a single query, and anything more advanced would require writing JavaScript. Now, you can configure components to trigger multiple queries, control other components, and call additional APIs in response to user interactions. - We've also greatly expanded the number of events available on components, and added new
utils
and component APIs. Anything you can do with Retool's JavaScript API (e.g.query1.trigger()
,modal.open()
,utils.showNotification(...)
) you can now do with Event Handlers. Event Handlers will be rolled out to all customers over the next few weeks. To learn more, check out the docs. - Admins can now assign Group Admins to manage membership for any custom groups.
- Previously, only Admins could manage membership for custom groups. Now, Admins can grant any number of group members the Group Admin privileges to add new users or remove existing users. Group Admins will be able to see all users within an org, but are not able to modify any aspect of their group beyond membership (e.g. app and resource permissions).
- Fixed a bug with the Redis resource not closing connections correctly
- Added support for copy/pasting multiple components
- Added autocomplete for native JavaScript functions in JavaScript queries
- Added support for ES2020 features like nullish coalescing and optional chaining
- Updated pasted components to use their original name
- Improved performance of apps with a Table component
- Added a
setValue
API to the Slider component - Added
play
,pause
, andseekTo
APIs to the Video component - Added a
duration
property to the Video component - Fixed inspector for the Calendar component
- Fixed the size of the Modal button when disabled
- Fixed event handlers on the S3 Uploader component
- Fixed the default name for new S3 Uploader components
- Fixed component positioning when pasting into containers
- Fixed some folders not appearing in the "Add to folder" dropdown when creating a new app
- Allow application releases to be unpublished, falling back to latest
- Add environment variable to disable username / password authentication
2.68.18
2.68.17
Upgrade from v2.68.17
We published v2.68.17 as a stable release on June 1st, 2021. However, we found a bug with Redis connections not being closed properly, which was fixed in the next version. We recommend upgrading directly to 2.68.18 instead.
v2.67
Release notes for Self-hosted Retool v2.67.
2.67.14
- We've made some great improvements to copying, pasting, and cutting components. Components can now be copied between desktop and mobile view. A component can also be cut from the canvas and pasted elsewhere.
- Navigating components when editing also just got easier. You can now tab between components on the canvas. Combined with arrow keys to move, CMD+arrow keys to resize, copy/paste, and cut/paste, you can now do quite a bit of layout work with the keyboard alone!
- We've made a few quality-of-life improvements for Source Control. In addition to admins, owners can now protect an application or a module. When setting up Source Control for the first time, Retool will now correctly handle a repository that has no existing commits.
- You can now toggle the AWS v4 authentication on an HTTP resource to use the default provider chain to get credentials. If enabled, Retool will check the following places, in order, for AWS configuration values.
- Environment variables
- Java system properties
- Web Identity Token credentials from the environment or container.
- The default credential profiles file
- Amazon ECS container credentials.
- Instance profile credentials
- Added option to convert a Container into a Tabbed Container
- Added short cut (CMD+SHIFT+G) to toggle grid on/off in addition to holding down command and dragging a component
- Split log output for Git Syncing and Source Control
- Changed select editors to show a "fx" button to switch from the dropdown to a code input.
- Added release creator and publisher information in Releases modal
- Added a "does not equal" option to table filters.
- Added additional logging to the Custom OAuth2 refresh flow
- Improved load times for apps by caching certain internal Retool data
- Locked group membership when syncing groups via SAML
- Added simple drag-and-drop functionality for the navigation component menu so users can re-order their menus as they please.
- Add
utils.exportData
to JavaScript queries and transformers - Fixed a bug with Git Syncing that affected read-only instances in certain Cloud-hosted environments
- Fixed Text v2 component to allow HTML class names
- Ask for confirmation before discarding unsaved transformer changes
- Fixed Snowflake resources to respect the default timeout
- Fixed array encoding for Stripe resources
- Fixed apps under Source Control sometimes not updating the latest synced commit
- Included correct authentication headers when making a logout request
- Fixed Table.selectRow to now selects multiple rows
2.67.13
Upgrade to v2.67.14
We published 2.67.13 as a stable release on May 17th, 2021, but detected a bug with Git Syncing for read-only instances in certain Cloud-hosted environments. We recommend upgrading directly to 2.67.14 instead.
v2.66
Release notes for Self-hosted Retool v2.66.
2.66.91
- You may have noticed a few changes in our release process for on-premise Retool. We now publish a new release every two weeks on Monday. v2.66.91 was the first version to be released using this new process on May 3rd, 2021.
- We've just launched a brand new version of our Text component. The component includes:
- Full support for all GitHub flavored markdown features — 6 different headline sizes, bold, italics, strikethrough, underline, bullet lists, numbered lists, task lists, images, links, blockquotes, code blocks, and tables.
- Dynamic height with the "hug contents" option, on by default
- Inspector improvements including a markdown-aware code editor and image scaling options
- The new Text component no longer supports advanced HTML rendering. If you require more custom HTML, check out the iFrame component or the Custom component.
- You might have noticed that the Text component doesn't support adding
style
tags for custom CSS. Good news is, you no longer have to hack in CSS into random Text components. You can now add styles specific to your application in the "Scripts and styles" modal. As the name suggests, this panel also lets you add JS libraries and define custom code in your applications. - We've refreshed the way drag and drop works in the editor for easier editing and a faster feedback loop:
- Redesigned component bounding box for easier selection, drag, and resize
- Instant drag-and-drop feedback with no countdown timer
- Major improvements and fixes to layout reflows from drag-and-drop and hidden components
- Hidden components are now visible when selected
- Support for opening/closing modals and switching Tabbed container tabs during drag-and-drop
- We've also added dynamically resizing to some containers. The Container component, Tabbed Container component, and Form components now include a "hug contents" setting that automatically sets the height of the container based on the height of its contents!
- For a quick guide on how these changes can make you faster at editing, check out the docs.
- Our new chart component, built on top of the open source Plotly library, makes data visualizations easier to build, update, and consume. It makes it simple to build charts right out of the box with all of the basics—like mixed chart types, built-in aggregations, and support for grouping—included. And because you're building charts in Retool, you can take action on the data you're looking at by easily writing back to your database, making an API request, or whatever else is impactful. See how other Retool users are leveraging charts in our blog post or checkout our webinar on how to build data-driven dashboards in Retool.
- Modules are a new way for Retool customers to reuse groups of components and queries between applications. Modules give you the ability to create a shared library of reusable components and queries that you can use in any Retool application. Any update you make to a module is immediately reflected in every app it powers. Check out our blog post and the docs.
- A brand new UI and folder-based permissions. Quickly and effortlessly manage access for many users.
- We've added integrations for Jira, Asana, Datadog and BigID, with many more to come!
- We've updated our UI for some of our most popular integrations including Stripe, Twilio and Sendgrid. Among many visual improvements, the new UI includes inline documentation for the resources so you no longer have to constantly switch between Retool and the Stripe/Twilio/Sendgrid documentation when writing your queries.
Updated 1 day ago