Looker 21 changelog


changed The Use old dashboards routes legacy feature now defaults to off.

changed After saving an Explore to a dashboard, users who click the dashboard link from the confirmation banner will enter the dashboard in edit mode.

changed When a user attempts to navigate away from a dashboard that has unsaved changes, the user will now see a Discard changes? warning dialog.

changed A new legacy feature, Use old navigation and legacy routing, allows you to disable enhanced navigation, which is now the default navigation experience. The Use old navigation and legacy routing legacy feature will be removed starting in Looker 22.2.

changed The default alerts experience now includes all the features and capabilities of enhanced alerts without the need to enable a Labs feature.

changed In order to address a vulnerability, Looker no longer recognizes self-closing XHTML tags in custom visualizations. Enabling a new legacy feature, Allow XHTML-style Empty Tags in Custom Visualizations, causes self-closing XHTML tags to be recognized in custom visualizations, but also exposes the vulnerability. For more information, see the Allowing XHTML-style empty tags in custom visualizations Best Practices page.

added Looker has improved Dark Mode visualization styling for single value, Cartesian, pie, and donut multiples charts.

added A new details panel is available for dashboards, including a new area where you can add a description for the dashboard. Metadata that shows the user who created and updated the dashboard, along with the number of favorites and views, also appears.

added The new Guided analyses in System Activity Labs feature provides the option to leverage a question-and-answer format for performing analyses in the History System Activity Explore.

added The Dashboard System Activity Explore now includes the preferred_viewer parameter and also mitigates an issue where the is_legacy field was not accounting for nulls.

added Looker now supports the approximate parameter for the Google BigQuery Standard SQL dialect.

added The LookML New Runtime (Aragonite) Labs toggle enables the option to use Aragonite on the Looker instance. When this Labs feature is enabled (the default), LookML developers can turn on Aragonite for individual LookML projects on the instance by adding the aragonite: yes statement to a project's manifest file.

added A new error message warns users when they attempt to use Liquid templates in the value_format parameter.

added The Dashboard Details description in the new Dashboard Details panel uses the same API as previous descriptions.

added Looker dialect MySQL 8.0.12+ now supports incremental PDTs.

added A new endpoint to the Looker SDK lets users request a dependency graph for a PDT.

added Looker has introduced a new LookML parameter, interval_trigger. The interval_trigger parameter specifies an interval at which a derived table is triggered for rebuild. interval_trigger can be a subparameter of datagroup or derived_table, and it accepts an interval string that indicates a number of seconds, minutes, or hours (such as "24 hours").

added The PDT details modal now includes a Show Dependency Graph button that displays a relationship diagram with the names and statuses of any cascading derived tables that the PDT depends on.

fixed In a nested menu, the parent menu item now remains highlighted.

fixed Clicking a menu item with a nested menu will not close both menus.

fixed An issue has been fixed where previously LDAP groups that were prefixed with # were causing errors.

fixed An error message in beta users pages that stated "user never logged in" for users who had logged in via SAML has been fixed.

fixed Performance issues with the group selector on the user edit pages have been fixed. This required a slight change to the design, but the overall UX is the same.

fixed Looker now accepts any valid certificate trust path when verifying SSL/TLS certificates, rather than failing if there is an invalid and valid path in the same chain presented from the server.

fixed Erroneous dates, such as January 1900, no longer appear in query results when a user downloads results in CSV format.

fixed The run_query API endpoint now renders an empty result set instead of returning an error stating that "The response body could not be parsed".

fixed Using the parameter value_format_name now rounds to the specified floating point precision.

fixed Downloading results in XLSX format no longer renders numbers using exponential notation.

fixed An issue has been fixed that caused certain System Activity queries from the History Explore to return a primary key error.

fixed An issue has been fixed that allowed the system_activity model to be selected while model sets were being edited.


changed Deleted Date has been changed to Moved to Trash Date in the Look and Dashboard usage views of the System Activity Content Usage Explores to differentiate between soft deletion (trash) and hard deletion (absolute).

changed The Revert to Legacy Dashboards legacy feature has been extended until Looker 22.0.

changed For Looker connections to Microsoft SQL Server (MSSQL), Microsoft Azure Synapse Analytics, and Microsoft Azure SQL Database, if you need to specify a non-default port other than 1433 and your database requires using a comma instead of a colon, you can add useCommaHostPortSeparator=true in the Additional Params field of Looker's Connection Settings page. This allows you to specify a non-default port other than 1433 in the Remote Host:Port field.

changed The border color for the Button component has been updated to improve contrast.

changed The border color for input components has been updated to improve contrast.

added The following Looker Marketplace Blocks have been converted to a new structure that utilizes LookML refinements rather than extends and are available for instances on Looker 21.8 or later: Retail Analytics, Google Ads Transfer, Jira, Shopify, Amazon Redshift Admin, Hubspot Marketing, Zendesk, Braintree Payments, Community Mobility, Campaign Manager 360, GitHub, Google Analytics 360, Search Ads 360, Chronicle, Google Cloud Audit Logs, Census Data, and BigQuery Info Schema. If your Looker instance has a version of one of these block installed that uses extends and you would like to install the version of the block that uses refinements, you can follow these instructions to migrate any customizations your extends-based block may have.

added Looker now prevents schedules from re-running indefinitely if a schedule job is interrupted. Looker will attempt to re-run the job up to 10 times.

added A new Labs feature, URL Links in Boards, allows editors of boards to add links to any URL on a board alongside their existing Looks and dashboards.

added Users can now group alerts by alert owner or dashboard name on the Manage Alerts user page and the Alerts admin page.

added Looker instances created with Looker 21.18 and later have the see_pdts permission added to the Developer default permission set.

added The option to Convert Project to New LookML has been re-introduced to the LookML IDE to allow users to convert their YAML LookML to LookML.

added Dremio and Dremio 11+ now support timezone conversions.

added Firebolt now supports in-database pivoting.

added Google ripple animation has been added to the IconButton, Checkbox, Radio, and ToggleSwitch components. The ripple is not visible when content is embedded.

added Within a Looker instance, private embeds can now use the Google OAuth and OpenID Connect authentication flows to authenticate a user.

fixed A bug has been resolved where incremental PDTs with a timezone parameter would previousy generate timezone conversion incorrectly in the WHERE clause of an incremental PDT update.

fixed A bug has been resolved that previously caused text within a <link> tag in inline documentation to not be formatted with blue text.

fixed A bug has been resolved that previously caused the swatch in an InputColor component to be incorrect when the field was disabled.

fixed A bug has been resolved for the Labs beta feature LookML Dashboard Organization that would cause LookML dashboards to not show up in the LookML dashboards folder if a customer had previously deleted LookML projects that contained LookML folders.


changed The Enhanced Navigation Labs feature is now on by default for all customer instances.

changed The Custom Fields Labs feature has moved from experimental to beta.

changed When formatting is enabled for query downloads, JSON numeric values must be enclosed in quotes.

changed For PDTs that are persisted as materialized views on your database, the PDT Admin page displays "Materialized View" under the PDT name in the PDT table, and displays "Materialized View" as the persistence rule in the PDT table and the PDT Details modal.

changed The legacy field picker toggle has been removed.

changed A non-admin user can now be granted the see_alerts permission, which enables access to the Alerts management page and the Alert History page in the Admin section of Looker. From the Alerts management page, they can view, follow, edit, self-assign, or delete any alert on the Looker instance.

changed Display-name-related attributes for alert owners and followers have been re-added to the public alert API.

added When enabled, a new experimental Labs toggle option, LookML Dashboard Organization, lets users organize LookML dashboards into other folders besides the default folder, LookML dashboards.

added The Enhanced Navigation Labs feature allows folders to be expanded in the new enhanced left navigation panel. When the feature is enabled, the Admin menu is now an option in the left navigation panel instead of in the gear menu on the top navigation bar.

added The stepped funnel visualization option has been re-introduced in new dashboards.

added New dashboard settings, Expanded and Collapsed, now let you choose the default appearance for dashboard filters.

added Users can now can copy a dashboard from within the dashboard itself using the dashboard's three-dot menu.

added Cross-filtering is now available for touchscreen devices. When cross-filtering is enabled for a dashboard, the touch and hold behavior will apply the filter.

added Always Retry Failed PDT Builds is a new checkbox in Looker's connection settings. When the Always Retry Failed PDT Builds setting is enabled, the Looker regenerator will attempt to rebuild trigger-persisted tables that failed in the previous regenerator cycle, even if a PDT's trigger value has not changed since the previous trigger check. Always Retry Failed PDT Builds is disabled by default.

added Embed Users credentials (for embed roles) and Looker Support credentials (for support roles) are now classified and displayed accordingly in the Edit Group page.

added Legacy dashboards scheduled for delivery from within a folder will now use the same interface as new dashboards and alerts. The changes to the folders UI are cosmetic only; functionality is unchanged.

fixed The 12:00:00 PM timestamps now display as expected for XLSX downloads that use the new query streamers.

fixed Streamed queries no longer return a totals row if there are no results.

fixed Sorting the pivot keys of type:long using new query streamers now works as expected.

fixed Users can now see better performant filter suggestions when creating a new filter.

fixed The EULA statement is now readable on all instances as expected.

fixed The Never logged in label is now added correctly to SAML logins if the New Users Page experimental Labs feature is enabled.

fixed Connection tests no longer appear canceled when they contain errors.

fixed Users with custom email domains can now be added as expected using the Add Users setting in New Users page.


changed Starting in Looker 21.14, the Syntax Tolerant Liquid legacy feature flag will be disabled for all users by default. Looker admins can continue to turn this warning off and on until October 2021, when the toggle will be removed.

changed The New Explore Visualizations Labs feature is now enabled by default.

changed The Looker API 4.0 is now designated as beta rather than experimental.

changed Native derived tables that use the dev_filters parameter are rebuilt in Development Mode only if a production version that satisfies the query does not exist.

changed MemSQL has been rebranded to SingleStore.

changed Starting August 13, 2021, GitHub requires token authentication for all Git operations. For all LookML projects that use GitHub with password authentication, to successfully commit you need to reset your Git connection in your project settings to use a personal access token.

changed When a user is deleted, any alerts they own are also deleted automatically and immediately.

added Enhanced Alerts is a Labs feature that, when enabled, displays a new UI on the alert management pages for users and admins, allows users to see more details about an alert, and enables Looker to sync an alert with most changes made to the alert's dashboard content.

added The Forecasting Labs feature enables analysts to project analyses into the future without derived tables, table calculations, or custom code.

added Clear cache and refresh permission is an experimental Labs feature that enables the clear_cache_refresh permission, which controls users' abilities to clear cache and refresh internal and embedded content.

added Introducing API Explorer, our all new interactive API reference documentation that replaces the API Docs feature. Starting in 21.14, API Docs is a legacy feature; however, it can still be accessed with the Require Authentication to Retrieve API Specifications toggle.

added Users can now use the Bin custom dimension type to create custom bins, or tiers, on numeric dimensions without the need to write complex LEXP expressions.

added The LookML dimension type bin has been introduced as an alias of the type tier.

added Users can now use the Get link option under the dashboard Actions menu to easily share content and copy the correct URL.

added Google Cloud Spanner is now a supported Looker dialect and no longer requires a JDBC driver to connect to the Spanner instance. It now supports query time zones, symmetric aggregates, and multiple DISTINCT columns in a single SELECT statement.

added In the PDT details modal of the Persistent Derived Tables admin page, users can now see the SQL that was used for the last build of a PDT.

added Admins can now create permission sets for users to include or exclude the ability to clear cache and refresh. By default, Looker users will have this permission enabled.

fixed The first tab of XLSX files that are downloaded with the new query streaming pipeline now show Sheet1 as their sheet name.

fixed Using any time-related fields in the custom measure filter condition no longer creates unnecessary time zone conversions and works as expected.

fixed The sql_quote Liquid filter now accepts arrays as input.

fixed For document files in your Looker project, the IDE preview will now render the files in the same way that the files appear to your users. Before, the IDE preview corrected errors in HTML so that the preview might have looked correct even if the file had HTML errors that would have been visible in the final version. Now, if your document files have errors, the errors will be visible in the IDE preview.

fixed For projects with advanced deploy mode, the Git button in the Looker IDE now shows Pull from Primary Branch when a development branch is behind the production branch and Merge to Primary Branch when there are unmerged commits on the developer branch.


changed The error-message format has been enhanced for value_format_name and value_format parameter mismatches. Example: Invalid 'value_format'. Error: 'decimal_1' is invalid for the 'value_format' parameter. Did you mean to use the 'value_format_name' parameter?

changed In the System Activity User Explore, the Sessions view now applies a default filter to remove "ephemeral" sessions that are used for rendering. This can be overridden, if necessary, by filtering on the session.credential_type dimension.

changed SQL Runner buttons will no longer be surfaced for System Activity Explores.

changed Required filters that are type popover or advanced will now show Value required instead of Any value.

changed Users with the save_content permission now have the ability to add tiles to dashboards.

changed The Make public... keyboard shortcuts Command-Shift-P (Mac) and Ctrl+Shift+P (Windows) have been removed from Explores and Looks.

changed Fields of type YesNo will have user-written SQL wrapped in parentheses when the fields are used in a SQL filter.

changed The Render Long Tables Labs setting for visualizations is now enabled by default. Additionally, for tables with more than 20,000 cells, cell visualizations as well as conditional formatting options other than Background color no longer appear in downloads or deliveries when the Expand Tables to Show All Rows option is selected.

changed To prevent merge conflicts, the Looker IDE does not present the Pull from (production branch) option to developers when the current developer branch has uncommitted changes.

added The new Redux DevTools Labs feature enables debugging application state.

added New Quick Start analyses are now available for the History and Dashboard System Activity Explores.

added The Role List measure is now available in the Role view in the System Activity model. It provides an aggregated list of the role.name field.

added Users are now able to add Looks directly to dashboards with the Add Looks to dashboards legacy feature toggle enabled.

added Two new integrations are available from the Looker Action Hub: Google Ads Customer Match and Google Analytics Data Import. See the Actions page in the Admin panel to enable these actions. These actions are available for instances on Looker 7.4 and later.

added Auto Install is a new toggle setting that has been introduced to the Marketplace settings. Auto Install allows for the auto installation of a suite of fundamental Looker-built applications (for example, API Explorer).

added The Looker extension framework is out of Labs and now generally available under the Admin > Platform settings. The extension framework is a development framework that significantly reduces the effort and complexity of building data applications with Looker.

added Admins now have the ability to move content to the trash in bulk in the Unused Content page.

added A new Labs feature, Enhanced Navigation, simplifies user workflows with unified left-hand navigation and more performant routing between common pages and content.

added The Upgraded Explore Field Picker Labs feature is out of Labs and now generally available. The Legacy Explore Field Picker is available as a Legacy feature until Looker 21.16.

added The Custom Fields Labs feature introduces new Quick Calculation and Group functionalities.

added A new Labs feature, Improved LookML Generation, adds auto-generated measures and inline comment explanations to new LookML projects that are generated from your database.

added The new Experimental Labs feature, Prerender iframes (before data loads) for custom visualizations has been added and is disabled by default.

added The new PDT Development Mode visibility feature enables developers to see the state of their Development Mode PDTs in the IDE and on the PDT Admin page while the user is in Development Mode.

added A new LookML parameter, fields_hidden_by_default: yes, allows users to hide all fields in a view from being displayed in an Explore field picker.

added Aggregate awareness now recognizes when a dashboard filter is applied to a tile. When getting aggregate table LookML from a dashboard, Looker will add the filter's dimension to the tile's aggregate table so the aggregate table can be used for the tile.

added A new LookML parameter, dev_filters, allows a developer to reduce the size of the dataset for a native derived table in Development Mode.

fixed Several issues with the new query streamer have been addressed, related to aggregations, escaping characters for JSON and Markdown formats, and conditional formatting of numeric fields.

fixed The dashboard_element.result_source field no longer contains incorrect conditional logic for merge queries in the System Activity Dashboard Explore.


changed For schedules that had Include links disabled, Looker no longer sends blank emails if the Looker instance is updated to use the Send Link Only emailed data policy. Looker will now warn users who attempt to enable the Send Link Only policy that the setting may cause some schedules to not work.

changed Visual design improvements to the Upgraded Explore Field Picker Labs feature enable users to more easily differentiate views from groups, and more easily identify when fields are pivoted or filtered.

changed The incremental PDTs feature is now out of Labs and is generally available.

changed In the System Activity User Explore, the history.query_run_count measure now filters out history records where the history.status value is cache_only_miss.

changed Looker components 2.0.0 is now available. To reduce the package size of @looker/components, all the date picker and date functions are now in a new package, @looker/components-date.

added The search experience for the Upgraded Explore Field Picker Labs feature now includes support for search modifiers to narrow the scope of the field list.

added The LookML Link ID dimension is now available in the System Activity Content Usage, Dashboard, Dashboard Performance, History, Scheduled Plan, and User Explores. If a user-defined dashboard was created from a LookML dashboard, this field will contain the ID of the source LookML dashboard.

added A new CLI feature for extension development is now available as the create-looker-extension.

added The Custom Fields dimension is now available in the System Activity Dashboard, History, Look, Merge Query, and Scheduled Plan Explores. This dimension provides a JSON string of any table calculations, custom measures, or custom dimensions that are used in a query.

added Dashboards will now include more specific error messages on tiles. The error messages will provide context, links to more details, and documentation to help troubleshoot issues.

added Users can now reset all filters to their default state from the dashboard three-dot menu or by using the Command-Option-R (for Macs) or Ctrl+Alt+R (for Windows) keyboard shortcut.

added New Looker expression function case(when(), when(), else) allows for sequential conditional statements without the need to nest those statements across multiple if functions.

added When getting aggregate table LookML from a dashboard, Looker determines whether a generated aggregate table could be used for more than one tile and, if so, drops any redundant aggregate tables that can be used for fewer tiles.

added Looker now supports the Firebolt database dialect.

added Materialized views can now be used to create persistent derived tables that leverage your database's persistence functionality. This is available for database dialects that support materialized views.

added The Looker Marketplace now supports LookML blocks that are built with refinements syntax. These refinement-style blocks will create a local project that generates a refinements.lkml file for adding refinements or additional customizations to the remotely imported CORE project that is managed by Looker. The project also generates a read-only model file that includes the refinements.lkml file and all views, Explores, and dashboards from the remote CORE project.

added A new file, marketplace_lock.lkml, maintains metadata about a Marketplace block installation's version number, models, and LookML constant values.

fixed You can now create data actions without defining a form parameter. These actions will show a pending, a success, and an error state.

fixed Look schedules that are delivered through webhook now send a Look title and link back to Looker content, as expected.

fixed When you're creating a one-time content delivery, the schedule's filter options will default to dashboard filters rather than to the saved schedule plan filter options, as expected.

fixed Schedules that contain tables with location dimensions now send as expected.

fixed Editing a scheduled plan will now open with the schedule's previously saved state.

fixed LookML that was generated for a derived table now escapes underscores in filters, as expected.

fixed Custom filters with type: yesno dimensions now generate correct SQL.

fixed The LookML validator no longer crashes when it encounters an extra closing bracket.

fixed The view_name parameter that is returned from the lookml_model_explore API endpoint is now the name of the base view that is used for the Explore. Previously, if the Explore name was aliased with either the from or the view_name parameter, the endpoint would return the aliased name (which was the same as the Explore name).


changed The Looker EULA for trial instances has been updated.

changed The LookML Model Explore API endpoint now returns an original_view attribute for the fields in the Explore. The attribute value is the original view name where the field was defined.

changed The color contrast in data tables has been increased, which improves the accessibility of data tables in Explores.

changed The Clear Cache & Refresh option for embedded dashboards and tiles has been removed.

changed New query streamers are enabled by default for all non-cached streamable queries. Admin users may opt to use the old streamers by enabling the Legacy Query Streaming legacy feature.

changed On the System Activity Performance dashboard, the history source for data_download_api has changed from api to system, and the history source for authenticated_download has changed from system to action_hub.

changed Looker dialects that use the MariaDB JDBC driver will default to using enabledSslProtocolSuites=TLSv1,TLSv1.1,TLSv1.2.

The affected dialects are MySQL, MariaDB, Google Cloud MySQL, Amazon Aurora MySQL, Clustrix, MemSQL, and MongoDB Connector for BI. For these dialects, if your database does not support TLS 1.2, your database connection will break unless you explicitly set the following in the Additional Params field of your connection settings: enabledSslProtocolSuites=TLSv1,TLSv1.1

To check if your database's SSL library supports TLS 1.2, you can run SHOW GLOBAL VARIABLES LIKE 'tls_version';

added Looker now supports BigQuery BIGNUMERIC columns.

added The Looker mobile app now supports the same 22 languages that the Looker web app supports.

added Admins can update settings to enforce user authentication every time a user opens the Looker mobile app. Users will also have the option to set up biometric logins.

added The SQL Text field is now available in the System Activity History Explore. You can access this field by selecting Show SQL Text in the drill menu in the History ID field.

added The following improvements have been made to the System Activity Content Usage Explore: 8 Quick Start analyses have been added as starting points for analysis; the required filter for including or not including deleted Looks or dashboards has been added; additional context has been added to existing descriptions of 14 fields; 7 unused or discontinued fields have been hidden; and common fields under group labels have been nested.

added Search Service is a new beta Labs feature that improves the experience and results when users search for content within Looker. The Search Service Labs feature is available only on instances hosted on Kubernetes.

added Drill links in new dashboards now open in a new tab if you click the links in combination with the Control or Command keys.

added Filters of type date_hour, date_minute, and date_second will now show a time drop-down next to fields of type date, when applicable.

added New Explore Visualizations is a beta Labs feature that creates parity between the visualizations shown on a new dashboard and Explores.

added Introducing new embed Save events when a look is edited, saved or deleted. Developers can leverage these events to take action in the parent pages of their applications.

added The application parameter now includes an sri_hash subparameter, which lets you specify a Subresource Integrity (SRI) hash, and a new use_clipboard entitlement, which specifies whether an extension is allowed to write to the system clipboard.

added API Explorer is a new beta Labs feature that provides a new and integrated experience for exploring the various API methods and types on the Looker platform.

added UI-based filtered measures have been added to the existing Custom Fields experimental Labs feature.

added The rootUrl JDBC parameter can now be used to customize the destination of BigQuery API requests.

added An admin user can now alter the IP address for BigQuery connections in the Additional Params options of the database connection settings.

fixed The LookML Validator now validates custom fields for LookML dashboards.

fixed LookML dashboards with non-ASCII characters in their titles can be scheduled, rendered, or downloaded as expected.

fixed Schedules saved for a single day per week no longer result in an error.

fixed Schedules with the Visualization format no longer check for explore permission.

fixed Schedules with Send if there are results selected will correctly check for results, even if table calculations and pivots are both used.

fixed Downloads with Results In Table selected now correctly download only selected rows, even if the row limit is blank.

fixed Dashboards can now be scheduled to send based on datagroup update, as expected.

fixed The scheduled_plan.updated_at field now has a datatype of TIMESTAMP instead of INT64.

fixed Advanced filter tier controls now work with parameter fields that contain underscores.


changed The metadata panel of the Looker IDE is now out of Labs and is generally available.

changed The Trend Lines in Visualizations Labs feature is now out of Labs and is generally available.

changed The Looker extension framework can be used to create iframes if use_iframes entitlement is added to the extension. Extensions that have the use_embeds entitlement are automatically granted the use_iframes entitlement.

changed All Looker custom visualizations now use a sandboxed iframe to promote security. Unsandboxed custom visualizations are no longer supported in Looker.

changed Adding an external email address to scheduled content no longer automatically switches off the Run schedule as recipient toggle. Instead, an error will be displayed stating that you cannot save an external recipient with that option enabled.

changed A syntax warning is returned if the keyword bigquery_datetime_as_timestamp is included in a model.

changed The render_tasks API endpoint no longer supports the combination of result_format and dashboard_style and will return an error: 422, unprocessable entity.

changed Instead of returning a generic 404 error, the API now returns the error Problems parsing JSON for invalid JSON set in a user attribute.

changed Users can override the Looker default values for the Snowflake connection properties by setting the following parameters in the JDBC Additional Params field of a connection: TIMESTAMP_TYPE_MAPPING=TIMESTAMP_LTZ, JDBC_TREAT_DECIMAL_AS_INT=FALSE, TIMESTAMP_INPUT_FORMAT=AUTO, and AUTOCOMMIT=true.

changed When the Segment Group action is used, Looker's payload will no longer include a segment_anonymous_id and will only send the segment_group_id when the segment_group_id LookML tag is present.

changed In the Connections drop-down, users can no longer see connections that they do not have SQL Runner access to.

changed The Looker Dialect BlinkDB has been deprecated and is no longer available.

changed Looker no longer supports the IBM DB2 Warehouse on Cloud (dashDB) dialect. Instead, for DB2 databases, you can use IBM DB2 on AS400 or IBM DB2 for Linux, UNIX, and Windows (LUW).

added A user can now create a new board, add a board to, or remove a board from their favorites directly in the All Boards modal view.

added Users can now navigate to LookML objects using the Looker IDE Jump to object or file icon or the keyboard shortcut Command-J (Mac) or Ctrl+J (Windows).

added Users now have the ability to copy File or Folder Path settings in the IDE on file and folder items found in the overflow (three-dot) menu.

added Columns in the data table in Explore queries now show helpful hints when users add multiple sort orders. This allows users to see the order in which sort orders are executed as well as any limitations that may be present.

added Custom fields and table calculations now support descriptions.

added The search experience for the Upgraded Explore Field Picker Labs feature has been improved.

added Starting in Looker 21.6, Looker is launching a new Liquid parser. Because this parser introduces new checks for valid Liquid syntax, you may see new validation messages for existing Liquid syntax after you update to 21.6. The new legacy feature Syntax Tolerant Liquid, which is enabled by default, ensures that all errors are categorized as informational.

added Using make _filters[] Liquid referencing a string type filter with no sql_quote in derived table SQL will now warn the user to use sql_quote.

added A new JDBC parameter, rootUrl, can be used to customize the destination of BigQuery API requests.

added A new beta API endpoint, create_oauth_application_user_state, and a new stable endpoint, create_embed_user endpoint, have been introduced for OAuth authentication.

added If the Incremental PDTs Labs feature is enabled, the PDT Details pop-up in the Persistent derived tables admin page now has an Increment Build Added/Removed Rows field, which shows the number of rows that were added or removed in the table's last increment.

added The New Users Page (beta) Labs feature allows users to see a redesigned, user-friendly, and more performant user list page.

added The Embedded Content Navigation feature has been re-added to the new dashboard experience. For this feature to be enabled for a user, the user must be given the embed_browse_spaces permission.

added Four new embed JavaScript message events are available for embedded dashboards and Looks: dashboard:save:complete, dashboard:delete:complete, look:save:complete, and look:delete:complete.

added Two new entitlements have been added for extensions that are built using the Looker extension framework: use_downloads, which specifies whether an extension is allowed to download files, and use_iframes, which specifies whether the extension is allowed to create an iframe.

added Added support for the Databricks dialect.

fixed Users can schedule dashboards and send to integrations only if granted permissions to see dashboards as well as the send_to_integration permission, as expected.

fixed New Looker instances will use /browse as the default homepage.

fixed Users can create scheduled plans to enabled Looker Action Hub destinations from a folder, as expected.

fixed Improvements have been made to value formatters.


changed In the case where two views are joined in a one_to_many join, if a view references a measure such as COUNT, SUM, or AVG from another view that doesn't have a primary key, Looker will now show a LookML model error: Field '(?)' depends on '(?)' which cannot be calculated because of a one_to_many or many_to_many join. Consider adding a primary key to '(?)'

changed The DataTable Looker component has been updated to be more accessible for screen readers, with better labeling on columns, rows, and cells.

changed The List component is now enriched with additional features. Additionally, there are two new components for lists: OrderedList and UnorderedList.

changed Look and dashboard view counts are now updated asynchronously; therefore, data changes may not be reflected immediately.

changed The LookML IDE renders the following new warning if the dashboard file declaration is invalid: Invalid dashboard declaration. Dashboard must be declared as: <dashboard_name>.

changed Errors in a project manifest file will surface correctly even if there are no models in the LookML project.

changed Admins can configure user attributes referenced by access filters so that these filters are dropped from the WHERE clause in Looker-generated SQL. The admin can set advanced type user attributes to %,NULL (for String Filter [advanced]) or <0,>=0,NULL (for Number Filter [advanced]). If the user attributes have these settings, Looker will drop these filters from the WHERE clause. This behavior was previously supported only for LookML projects with aggregate awareness (projects with an aggregate table defined), but is now the behavior for all Looker projects with these user attribute settings.

changed The --scheduler-threads=<i> startup flag can no longer be used to determine alert runs or to disable alerts. For these tasks, use the --alerts-scheduler-threads=<i> flag.

changed The create_query API endpoint now accepts filter values of only type: string.

changed The bigquery_datetime_as_timestamp legacy feature has been removed. Any field with datatype: datetime declared on a model using a BigQuery standard SQL connection will now be treated as a BigQuery datetime type field.

changed Looker Dialect Vertica 6 has been deprecated. Vertica remains a fully supported Looker dialect.

changed Users using Exasol, Hana, or Vertica dialects may see an error message alerting them to potentially malicious SQL execution in their PDTs. The error message offers a workaround if the SQL is safe.

changed Because of several Slack API endpoint deprecations, users must upgrade to Lookerbot version 0.0.16 or higher for Lookerbot to function properly.

changed The inline JSON format for actions has been updated to create consistency among action formats. Going forward, the query for the payload data will be returned in the attachment field instead of the data field, which will now contain any authentication token information.

added The Looker mobile app is now available for download on the Google Play Store (new iOS version is coming soon). The GA version is v1.1.0 and includes a new and improved dashboard experience. All instances will have mobile access enabled by default. Admins can manage access to the Looker Mobile app from the Mobile Application Access section of the Settings page in the Looker Admin panel.

added While in edit mode on dashboards, users now have the ability to discard their changes using the Cancel button.

added Dashboard themes with a dark background color have been significantly improved for embedded customers. Filters now use background and text colors, while filter labels, visualization labels, and icons use text color.

added Dashboards that include a tile based on a System Activity Explore can now use the fields from the Explore to create dashboard filters. System Activity filters cannot be added to legacy dashboards.

added The metadata panel of the Looker IDE, which is enabled by the IDE Metadata Sidebar Labs feature, now shows primary key information in view metadata. In addition, the metadata panel includes metatdata for imported projects.

added The LookML Model Diagram (beta) extension, which provides an entity relationship diagram for the objects within a LookML model, is now available in the Looker Marketplace. This extension lets users quickly assess a LookML model's state and make informed decisions about future developments.

added Cross-filtering now supports range selection on visualizations.

added For LookML projects automatically generated from a BigQuery database, Looker will autopopulate the LookML field description values with the descriptions from the BigQuery column metadata, if any.

added For projects using a BigQuery connection with aggregate awareness, if a query can use an aggregate table, the Explore window displays the estimated cost savings of using the aggregate table instead of the original table.

added Fetch Information Schema for SQL Writing is now a toggle option for database connections. This option enables SQL writing optimization when the schema is not cached; however, this will require that SQL writing be occasionally blocked while the information schema is fetched from the databases.

added The Fast Value Formatting Labs feature is now out of Labs and is generally available. The new value formatter is more performant and has the same support as the legacy value formatter, including support for ECMA-376 format codes.

added Users should now see significant performance improvements to the PDT Admin page.

added A new beta Labs feature, Incremental PDTs, enables Looker to append fresh data to a PDT instead of rebuilding the entire table.

added The PDT Activity dashboard has been added to the System Activity model and is now accessible from the Persistent Derived Tables page under Admin.

added A new validator warning occurs when a column that has not been explicitly added to an NDT definition is used in the sorts:[] parameter.

added The Tree component now supports the keyColor property, which imbues the Tree and any nested Trees or TreeItems with backgrounds that leverage the key color specified in the theme.

added A new experimental Labs toggle option, Render Long Tables, can be enabled to reduce the PDF or PNG rendering time for long tables.

added The following four new endpoints have been added to the experimental API v4.0 and can be used to move or copy an existing dashboard or Look to any specified folder: move_dashboard(dashboard_id, body, folder_id), copy_dashboard(dashboard_id, body, folder_id), move_look(look_id, body, folder_id), and copy_look(look_id, body, folder_id).

added A new API 4.0 beta endpoint, api_spec, can be used to retrieve a Looker API specification from the Looker server.

added The new embed_save_shared_space permission allows an embed user to save to the Shared folder without being assigned to an external group ID, provided the user has the save_content permission.

added SAP HANA version 2 and Apache Spark 3+ are now supported Looker dialects.

added Vertica dialect now supports percentile, a LookML measure type.

added Japanese characters can now be entered into the Looker Data Dictionary extension context data.

added Now available in the Looker Marketplace, Force-Directed Graph is a new custom visualization that you can use to show relationships among entities in your data.

added Gerrit is now a supported Git repository.

added Microsoft Azure is now available as a hosting environment for Looker-hosted instances. Instances are currently hosted in the Virginia, USA region.

fixed Targets of the link parameter that use an absolute link will now open in a new browser tab as expected.

fixed Users can create dashboard filters that filter twice on the same field, as long as each filter is applied to different dashboard tiles.

fixed A filter on a yes (or) no field no longer blocks aggregate awareness optimization from doing a UNION ALL rewrite unless the yes (or) no field is also in the query.

fixed An aggregate table can be used as expected even if its time filter is a superset of the query and the time dimension is more granular than that of the query.

fixed Aggregate awareness used with filter values of NULL and not NULL works as expected.

fixed Visual drilling defined in the LookML is now supported on dashboards that use the new dashboard experience.

fixed Customers with access to the System Activity Explores can now add filters on those fields as expected when creating dashboards.

fixed Schedules with datagroup triggers no longer return a 422 error. Users can now create a schedule with a datagroup trigger from dashboards that use the new dashboard experience as expected.

fixed Users can now select a TLS version on the Custom SMTP settings page as expected.

fixed Removing localization_settings from a manifest.lkml file will no longer cause errors or warnings generated by localization to disappear on subsequent LookML validations.

fixed Embed SSO URL validation errors will now appear within the validation area on the Admin Embed page as expected.

fixed One-time SFTP deliveries can be created, modified, and saved as expected.

fixed Creating a new branch with spaces in the branch name will no longer render an error but will instead automatically replace the spaces with hyphens.


changed The Year to Date control option on the timeframes filter, used to filter from the beginning of the year to the current date, has been temporarily removed.

changed The Overflow option in the Location drop-down has been removed from the Edit Filter pop-up. Filters can be moved into overflow by dragging and dropping.

changed Some filter control types now have only one possible display orientation. For filters that have multiple display options, you can still switch between Popover and Inline. Other filter control types may be available for only one of those options. Any existing filters that had a display orientation that is no longer supported will now show the current default display orientation for that type of filter control. All filter control types can still be dragged into the More button.

changed The cross-filtering feature is now generally available without having to enable a Labs feature. Cross-filtering must be enabled on each dashboard.

changed SQL Runner queries can no longer be merged to Explore queries and saved to dashboards.

changed When you launch a Quick Start analysis, the visualization pane will automatically be opened. Quick Start analyses now respect applied sorting.

changed When you clear fields from an Explore query, custom fields will be deselected instead of removed.

changed On the In Use tab of an Explore, users can now switch the timeframe of a selected date or duration field without going into the full field list.

changed The upgraded Explore field picker defaults to the All Fields tab instead of the In Use tab when an existing query is open.

changed If the New Query Streaming experimental Labs feature is enabled and the query is streamable, the scheduler will use the new query streaming feature.

changed The Download Termination Error Handling feature has been removed from Labs. It is now configurable through an experimental feature CLI flag, download-termination-error-handling.

changed A custom visualization that uses JavaScript no longer requires third-party cookies to be enabled for it to load.

changed The Looker Data Dictionary field profiler now checks whether Count measures belong to the same view name, rather than view label, as the selected numeric dimension to display Distribution and Values calculations.

changed The ability to join to the sessions table has been removed from drill queries on tiles in the User Activity dashboard under the System Activity section of the Admin panel.

changed Extension code can be split into multiple bundles for faster load time.

changed As with previous versions of Looker, when the last remaining recipient of a scheduled content delivery unsubscribes, the schedule is deleted. In Looker 21.0, that user will now see the following confirmation message when attempting to unsubscribe: You're the only recipient for this schedule. If you unsubscribe from this delivery, the schedule will be deleted. Are you sure you want to unsubscribe?

changed To generate LookML that better handles nested records, improvements have been made to the LookML generator and Create View from Table page.

changed The api_server_url has been added to the /versions endpoints for the Looker API server. The https://my.looker.com/versions endpoint no longer requires authentication.

changed Looker's managed database service feature is disabled for all Looker versions on 21.0 and higher. To have the feature enabled, contact your Looker representative. The service will be discontinued entirely in Looker 21.12 (July 2021).

changed Support for JDK 11 has been temporarily suspended.

added A new visualization type, Histogram Visualization, is now available from the Looker Marketplace.

added Users can now create a custom measure from a custom dimension in the field picker.

added Cross-filtering is now supported on the Funnel Chart and Timeline Chart visualization types and for custom visualizations.

added Fast Value Formatting is a new beta Labs feature that significantly improves value formatting performance.

added Subheaders identifying the type and name of an object are now populated in the metadata panel, which is enabled by the IDE Metadata Sidebar Labs feature. If the object selected is a view, then the metadata panel populates the Base View of and Joined in sections, which provide context for how the view is used in your project.

added Since is a new status under the Regenerating and Building sections of the Persistent Derived Tables under Admin to show additional information on when the build started.

added Embedded images (base64-encoded) can be viewed in query results if the Block Inline Embedded Images in Query Results admin setting is disabled.

added Alerts can now be set to check for alert conditions more frequently and include an option to specify an interval during which alert checks will occur.

added The role, model set, and permission set listing page is now paginated and searchable.

added Admins for instances with whitelabeling enabled can now access product messaging.

added Users can now view and adjust time zones within dashboards using the new dashboard experience, as long as User Specific Time Zones is enabled.

added Users can now add and save comments on individual fields in the Data Dictionary extension. These comments live only in the Data Dictionary UI and are not propagated to the associated LookML model. Looker admins can assign users permissions to view or make comments; or they can toggle comments off entirely. To implement comments, update the Looker Data Dictionary app to version 2.0.0 or later from the Manage page in the Looker Marketplace.

added Users now have the ability to specify the target Git branch where Looker developer branches will be merged. Use the Git production branch name field in the Project Settings. The default Git production branch is master.

added Amazon Redshift is now a supported SQL Dialect for distinct counts with aggregate awareness.

added Dremio 11+ is now a supported Looker dialect and includes support for symmetric aggregates.

added Dialects Cloudera Impala 3.1+ and Cloudera Impala with Native Diver 3.1+ now support symmetric aggregates.

added In the experimental Looker API (v4), the all_users endpoint can optionally request user count.

added The /api/3.x/derived_table/graph/model/:model endpoint has been made publicly available to visualize PDT dependency graphs for troubleshooting PDT errors.

added A new measure, Dashboards Run Count, has been added to the System Activity history view.

added The Google Chronicle Security Block, for analysis of Chronicle datasets in Google BigQuery, is now available from the Looker Marketplace.

fixed The upgraded Explore field picker result set no longer displays erratic scrolling and now has improved accessibility support.

fixed The list of available options for the values of parameters now renders as expected.

fixed Visualizations no longer have issues with y-axis labels and tick mark values overlapping.

fixed Resizing columns on transposed tables works as expected.

fixed Sorting in the upgraded field picker is based on the group_item_label, as expected.

fixed The table header shows up as expected when a table calculation is added to a table before any dimensions or measures.

fixed SSO Embed users will no longer be shown a logout pop-up.

fixed Embedded dashboards that use the new dashboard experience no longer generate spurious page:changed and dashboard:filters:changed messages.

fixed Performance improvements on the Admin > Connections and Admin > Groups pages result in faster page loads.

fixed Users no longer require explore permissions to download drill data in PNG format.

fixed System Activity is now returned with all_lookml_models(), including lookmlmodel(system_activity), if the user has see_system_activity permissions.

fixed Downloads to the XLSX format using the New Query Streaming feature work as expected for queries with value formatting and measures.

fixed Links using Liquid variables work as expected.

fixed When Looker's Slack integration is enabled, the /looker select command is included as expected in the list of supported commands shown when you type the /looker help command into Slack.

fixed Time series alerts will fire as expected if values in any pivoted column meet or exceed the alert conditions.