Earth Engine Code Editor release notes

Subscribe to these release notes. Subscribe

This page is updated with each notable change to Earth Engine Code Editor. Specifically, it lists releases by date and includes any new features, bug fixes, and significant performance improvements. You can also browse and filter release notes for all Google Cloud products in the Google Cloud console.

April 14, 2025

Added ui.Widget styling support for border-related CSS properties, including borderColor, borderRadius, borderStyle, and borderWidth. This allows users to set border styling per side in the format top right bottom left, and to round the corners.

January 06, 2025

Updated Map.centerObject() to use ee.FeatureCollection.bounds().

July 16, 2024

Fixed a bug where specifying minWidth and minHeight style properties on ui.Slider widgets had no effect. Setting these properties now allows for horizontal sliders narrower than the default minWidth of 50px, and vertical sliders shorter than the default minHeight of 100px.

Reduced the maximum allowable header size of a GeoTIFF (produced by the ee.Image.loadGeoTIFF() algorithm or by CreateAsset as a COG-backed asset) from 32mb to 10mb. This change does not affect COG-backed assets with headers >10mb created prior to this date.

March 13, 2024

Added a new code annotation and warning message in the script editor to highlight usage of deprecated Landsat Collection 1, which needs to be converted to Collection 2 as soon as possible.

October 24, 2023

Fixed linked drawing tools in Apps so that geometries are synced between two drawing tools with setLinked(true).

August 09, 2023

Launched Project-owned Apps feature to support app collaboration under a new project ID namespace. See our app developer documentation for more information.

June 27, 2022

Changed Export logic in the Code Editor to no longer use the map bounds as a default region for the output. The Export behavior now matches that of the Python API, and calls which specify the projection parameters will remain unchanged. To use the viewport bounds as an export region, use Map.getBounds(true) as the region to get the geometry explicitly.

May 27, 2022

Added EECU stats on exports in the Code Editor and Tasks page.

May 09, 2022

Launched FeatureView assets and API. For an overview, see https://developers.google.com/earth-engine/guides/featureview_overview.

February 18, 2022

Improved the user interface for Earth Engine App creation and management flows.

December 13, 2021

Added imageUrl option to ui.Button and ui.Label. If provided, the image will be shown instead of the label text, which will then be used as a tooltip. As with ui.Chart, only images in data: URLs and icons loaded from gstatic.com are allowed.

Reinstated the allowHtml option for ui.Chart, while continuing to disallow external image display. Images in data: URLs and icons loaded from gstatic.com are allowed.

November 24, 2021

Added an "Output URLs" list to the Task Manager, so that, when using Export.map.toCloudStorage(), you can easily copy-and-paste to add a tiled overlay to your Google Earth project, or for use with the Google Maps Platform JavaScript API.

October 19, 2021

Removed the allowHtml option from the set of allowed options in ui.Charts. This was done as a security precaution.

September 15, 2021

Launched a standalone Task Manager and a new interface in the Code Editor's "Tasks" tab. See our documentation for details.

May 12, 2021

Replaced the JavaScript sandbox in the Code Editor with JS-Interpreter, to provide improved error reporting and cross-browser consistency. All of the ES5 JavaScript specification continues to be supported.

April 29, 2021

Added support for passing map IDs (from ee.Image.getMap() and elsewhere) to Map.addLayer().

April 01, 2021

Added ui.Checkbox.getLabel() and ui.Checkbox.setLabel() to get and set labels of ui.Checkbox.

Added a textDecoration property to ui.Widget.style().

November 19, 2020

Fixed ui.root.onResize() so that the callback is not fired after the script is reset or replaced.

Expanded ui.DateSlider to accept ee.Date object arguments. Improved ui.DateSlider sliding behavior, validation, and error reporting.

November 05, 2020

Limit the minimum and maximum zoom level on Map or ui.Map objects by setting the minZoom or maxZoom parameters on setLocked().

October 29, 2020

Improved error reporting for syntax errors, by highlighting the error line in the editor and positioning the cursor at the location to fix. Syntax checks are performed before a script starts executing.

October 15, 2020

Fixed Map.centerObject when called with a single point. This now zooms to a small region around the point, instead of doing nothing.

September 25, 2020

Added an indicator for the number of times a task was attempted. Earth Engine automatically attempts tasks a few times because some failures are sporadic. Likely causes for retries include exceeding memory limit and a temporary resource shortage.

March 06, 2020

Improved design of the assets dialog, with markdown support in the description and smarter thumbnails.

February 21, 2020

  • Added ui.util.getCurrentPosition() API that gets the user's current geographic position from the browser's geolocation service.
  • Now accepts named parameters in Map.setCenter() and Map.setOptions().
  • Added drawing tools control to Map.setControlVisibility() and ui.Map.setControlVisibility().
  • Prevented chart from opening multiple times when clicking the popout button.
  • Accepted TFRecord and GeoTIFF file format selection in image export dialog.
  • Fixed upload errors when file names contained non-ascii UTF-8 characters.
  • Dismissed popup dialogs when the mouse scrolls elsewhere on the page.

January 23, 2020

  • Drawn geometries displayed in Code Editor display in newly published Apps.
  • Now prompts for a Cloud Project when re-publishing an App.
  • Added ui.url API for reading URL parameters. See our blog post for more details.
  • Added ui.Map.DrawingTools and ui.Map.GeometryLayer for programmatic access to the drawing tools. See the official documentation.

November 22, 2019

Added feature to restrict access to Earth Engine Apps to members of a Google Group. See the announcement on the developers list

November 12, 2019

Launched ui.root.onResize() API with an example script for configuring user interface based on the device type and screen size.

  • Expanded only exact matches on API documentation search in Code Editor.
  • Fixed Map.setZoom() so that it works after the map zoom is changed.

September 13, 2019

Added support for uploading CSV files.

August 30, 2019

Opened the shortcuts menu on ? key press when not in a text field.

July 29, 2019

Enabled ui.Thumbnail() to accept ee.Geometry objects for the region parameter.

June 13, 2019

  • Added ui.Map.CloudStorageLayer(), a type of map layer which reads static image tiles from Google Cloud Storage in the Code Editor and Earth Engine Apps. For more information, see the Developer's Guide.
  • Improved ui.Slider widget's onClick behavior.

June 07, 2019

  • Separated Help and Feedback menus and added link to Stack Exchange.
  • Added explicit "Save & Close" button when editing asset properties.
  • Enabled Ctrl-Drag to make copies of scripts.
  • Simplified login flow.

May 10, 2019

Added a Manage Links page, on a menu next to Get Link. Links can be deleted and downloaded in bulk.

April 03, 2019

Added the ability to draw rectangles on the map (along with points, lines, and polygons). Learn more in the Developer's Guide.

March 15, 2019

Dataset listing page now redirects to the public catalog.

February 21, 2019

Changed positioning of ui.Panel.Layout.absolute() widgets on maps. The new positioning aligns better with other map controls such as the Layer Manager. Also added support for multiple widgets in the same position.

January 17, 2019

  • Added KBDI dataset.
  • Fixed a bug in which the export/thumbnail region was generating an extra pixel when the region has an edge that lies exactly along a pixel boundary line. For example, in the past behavior, exporting a hemisphere might export one pixel on the other side of the equator. This should now be fixed.

January 04, 2019

  • Added "Run With Profiler" option and removed sticky profiler setting.
  • Added ui.Map.onTileLoaded() notification.

October 11, 2018

Added the ability to make a ui.Label() be a hyperlink.

September 28, 2018

Released Earth Engine Apps, to enable developers to create dynamic, publicly accessible user interfaces for Earth Engine analyses (see our blog post for more details).

September 14, 2018

  • Added ui.DateSlider UI API widget, to allow simple selection of dates.
  • Added ui.SplitPanel UI API widget, to enable side-by-side maps in a panel.

August 17, 2018

Added ui.Map.unlisten().

April 13, 2018

Fixed Cannot read property 'undefined' of undefined error.

April 06, 2018

Added time-related utility functions to ui.util:

  • ui.util.clear()
  • ui.util.clearTimeout()
  • ui.util.rateLimit()
  • ui.util.setInterval()
  • ui.util.setTimeout()
  • ui.util.throttle()

March 21, 2018

  • Added wrap parameter for ui.Panel.Layout.Flow(), which causes widgets in the layout to wrap if they overflow the available space.
  • Added the ability to specify an opacity for ui.Style color and background color (using hex or rgba notation).

December 04, 2017

Improved the robustness of polygon handling in table upload. Previously-difficult polygons are now interpreted according to the rules used to draw them.

October 11, 2017

  • Added an advanced table upload option to control the precision of geometry transformations performed during upload.
  • Added an advanced table upload option to enable spatially subdividing complex geometries.
  • Fixed a bug that prevented the legacy Script Manager from loading.

June 12, 2017

  • Added support for uploading shapefiles.
  • ui.Map.addLayer() now returns the ui.Map.Layer instance.
  • Fix issue filtering Examples tab.

December 08, 2016

Fixed bug with race conditions around Map.centerObject() calls.

September 22, 2016

Added the ability to add a description and title to uploaded assets.

September 08, 2016

Added maxFrames parameter to Export.video.

September 02, 2016

Deleted deprecated methods addToMap(), centerMap(), and getMapBounds().

August 03, 2016

Updated documentation for the User Interface API.

July 28, 2016

Updated Export.map.toCloudStorage() to make the 'path' parameter default to the export task's description.

July 21, 2016

Added the User Interface API.

July 01, 2016

Updated the visualization dialog to allow new changes to be applied when the palette is updated.

June 13, 2016

  • Added a script performance profiling tool, enabled via the settings menu.
  • Update the series order in Chart.image.histogram() to be consistent with the band order in the image.

June 02, 2016

  • Added ability to view quota usage for a root asset folder.
  • Added support for exporting an image from your script environment to an Earth Engine asset with Export.image.toAsset().

May 18, 2016

Expanded Export functionality to support maps as an export type and Google Cloud Storage as a destination.

March 10, 2016

Added Image.arrayCat() to concatenate the pixels of two array images along a given array axis.

February 26, 2016

  • Added MIN, MAX, and MODE as reduction policy options for generating tile pyramids for ingested assets.
  • Added instructions for configuring a googlesource.com Git password to the script repository share dialog.

February 18, 2016

  • Geometry drawing keyboard shortcuts now require holding the shift key.
  • Added a refresh button to the asset list.

February 02, 2016

Added ability to edit asset metadata.

January 11, 2016

ee.Dictionary() can now be called with no arguments or with a list of alternating keys/values.

December 02, 2015

Added support for tiled asset uploads with multiple files.

November 19, 2015

Added support for creating and sharing ImageCollection assets, and for adding and removing Image assets to and from those collections.

November 13, 2015

Added "Use last band as alpha" as a masking mode option for asset uploads.

October 02, 2015

  • Added support for asset renaming.
  • Resolved issue that prevented searching for "where".

September 24, 2015

  • Fixed a bug causing "Git protocol error" seen when saving scripts.

September 13, 2015

  • Fixed bug in which 'Clear Script' was not closing the current script.

August 27, 2015

  • Added support for uploading files up to 10GB.
  • Fixed bug which broke chart popouts in Safari.

August 07, 2015

  • Added support for asset upload and management within the UI.
  • Added Visualization Dialog to the Layer Manager.

June 26, 2015

  • Fixed a bug in some charts that used ee.Date.
  • Added support for custom date axis ticks in charts.
  • Fixed error that occurred when auth token refresh is attempted while the browser is offline.
  • Updated the link to User Documentation.
  • Added more HydroSHEDS datasets.

June 19, 2015

  • Fixed a bug that allowed drawing geometries with no layer selected.
  • Fixed a bug that could cause empty geometry imports to be loaded as code instead of editable layers.

June 04, 2015

  • Added ee.data.authenticateViaPopup() and instructions on how to use it to avoid popup-blockers when doing client-side EE library authentication.

May 15, 2015

Added a "Clear script" option to the "Reset" button.

May 08, 2015

  • Added syntax highlighting to script diffs.
  • Added a "Clear script" option to the "Reset" button.
  • Increased the Playground map zoom limit from level 19 to level 24.
  • Fixed an issue that could cause the script manager to repeatedly ask for merging even if nothing has changed.
  • Fixed an issue with special character treatment in script names during migration.
  • Fixed support for Unicode script names.
  • Fixed scripts sometimes loading old versions after viewing a diff.
  • Fixed issues with handling of non-alphanumeric characters in script names during migration.

April 30, 2015

  • Added support for exporting video to Google Drive.
  • Added a new, Git-based script management tab.
  • Fixed task starting on Internet Explorer.
  • Fixed search in the documentation tab.
  • Added support for hiding of tasks older than one day in a collapsed zippy.

April 23, 2015

April 10, 2015

  • Added the Playground Tour to discover new features.
  • Added a Report Error button to Internal Server Error messages in the console.
  • Fixed labels for series named (numerical) 0 to be rendered in chart legends.
  • Fixed byFeature(), series(), byRegion(), and doySeries() chart helpers to generate reliably ordered series (default order: alphabetical).
  • Fixed Chart CSV files to include column labels.

March 26, 2015

  • Added geometry editing tools.
  • Added Fusion Tables search.
  • Added an Imports section the editor.

March 17, 2015

Fixed Map.addLayer() to stop silently dropping incorrectly-specified layer names.

March 06, 2015

Made Map.setStyle() case-insensitive with regards to map type names.

February 28, 2015

  • Fixed mishandling of date value declared as strings in Chart.
  • Fixed custom map styles persisting after Reset is clicked.
  • Improved the highlighting of deprecated Landsat assets.
  • Changed the Search Datasets shortcut from Ctrl+D to Ctrl+Alt+F to avoid conflicts.

February 20, 2015

  • Added a new feature that underlines code suggestions.
  • Added an editor settings menu with two toggle-able settings:
    1. Underline code suggestions
    2. Autocomplete pairs like "", (), {}
  • Added a shortcut to focus on the Dataset search bar, Ctrl+D.
  • Fixed Map.setCenter() silently failing on invalid inputs.
  • Fixed the Playground failing after the window is kept open for over 24 hours.

February 10, 2015

Changed Charts to use UTC as the default timezone.

January 15, 2015

  • Added Chart.image.byClass().
  • Added support for Chart ticks specified as dates.
  • Fixed bug in Chart.array.values() triggered by axes with leading zeros.
  • Added better support for charting series of different data types.