Subscribe
to these release notes.
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.Chart
s. 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()
andMap.setOptions()
. - Added drawing tools control to
Map.setControlVisibility()
andui.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
andui.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'sonClick
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 forui.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 theui.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
, andMODE
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
- Added
Map.getCenter()
. - Added the ability to override the playground map language and region localization using the map_language and map_region query parameters. E.g. https://ee-api.appspot.com/?map_region=ja&map_language=ja
- Added auto-categorization of tasks older than one day.
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()
, anddoySeries()
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:
- Underline code suggestions
- 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.