- ENSO_IDE_MAPBOX_API_TOKEN environment variable should be provided to enable GeoMap visualization.
- Round ‘Add component’ button under the component menu replaced by a small button protruding from the output port..
- Promote broken values instead of ignoring them.
- Intersection types & type checks
- A constructor or type definition with a single inline argument definition was previously allowed to use spaces in the argument definition without parentheses. This is now a syntax error.
- Symetric, transitive and reflexive equality for intersection types
- Rows and Columns may be now removed in Table Input Widget. The option is available in right-click context menu.
- Rows and Columns may be now reordered by dragging in Table Input Widget
- Copying and pasting in Table Editor Widget now works properly
- Fix invisible selection in Table Input Widget
- Enable cloud file browser in local projects
- Changed the way of adding new column in Table Input Widget. The "virtual column" is replaced with an explicit (+) button.
- New dropdown-based component menu.
- Methods defined on Standard.Base.Any type are now visible on all components.
- Undo/redo buttons in the top bar.
- Size of Table Input Widget is preserved and restored after project re-opening
- Added application version to the title bar.
- Added "open grouped components" action to the context menu.
- Table Input Widget has now a limit of 256 cells.
- Added an error message screen displayed when viewing a deleted component.
- New documentation editor provides improved Markdown editing experience, and paves the way for new documentation features.
- You can now add images to documentation panel by pasting them from clipboard or by drag'n'dropping image files.
- "Write" button in component menu allows to evaluate it separately from the rest of the workflow.
- The documentation editor can now display tables
- The documentation editor supports the Markdown URL syntax, and uses it to render pasted URLs as links
- Table Input Widget is now matched for Table.input method instead of Table.new. Values must be string literals, and their content is parsed to the suitable type.
- Added dedicated function signature viewer and editor in the right-side panel.
- Visualizations on components are slightly transparent when not focused.
- New design for vector-editing widget
- The component menu can be opened by right-click; supports operations on multiple components; has a 'Copy Component' button
- New design for vector-editing widget.
- Default values on widgets are displayed in italic.
- Fixed bug causing Table Visualization to show wrong data.
- Pasting tabular data now creates Table.input expressions.
- No halo is displayed around components when hovering.
- The hover area of the component output port extended twice its size.
- The documentation editor and comment documentation support opening links with a key pressed, or via a popup when editing.
- Fixed a rare bug where the component position wasn't persisted after closing project
- [In the table visualization and table widget, the table context menu can now be opened on OS X][11755].
- Fix some UI elements drawing on top of visualization toolbar dropdown menus.
- Edges are now colored based on their source component.
- Highlight missing required arguments.
- Arrows in some drop-down buttons are now clearly visible
- The
enso://~
path now resolves to user's home directory in the cloud. - The user may set description and labels of an Enso Cloud asset programmatically.
- DB_Table may be saved as a Data Link.
- Support for dates before 1900 in Excel and signed AWS requests.
- Added
Data.read_many
that allows to read a list of files in a single operation. - Added
Table.input
allowing creation of typed tables from vectors of data, including auto parsing text columns. - Enhance Managed_Resource to allow implementation of in-memory caches
- [Added
add_group_number
to the in-memory database.11818 - The reload button clears the HTTP cache.
- SQL Server Support for Aggregate
- Arguments in constructor definitions may now be on their own lines
- The
:
type operator can now be chained.
- Table Editor Widget displayed in
Table.new
component. - New design of Component Browser - the component list is under the input and shown only in the initial "component browsing" mode - in this mode the entire input is a filtering pattern (it is not interpreted as parts of code). After picking any suggestion with Tab or new button the mode is switched to "code editing", where visualization preview is displayed instead. Also the component browser help is now displayed in the right-side dock panel.
- Drilldown for XML
- Fixed issue where switching edited widget with tab key did not updated actual code
- Added fullscreen modes to documentation editor and code editor
- Fixed issue with node name assignment when uploading multiple files.
- Cloud file browser inserts
enso:
paths - Fixed issue where drag'n'dropped files were not uploaded in cloud projects.
- Fixed files associations not properly registered on Windows
- Input components corresponding to function arguments are now displayed.
- Fixed "rename project" button being broken after not changing project name
- Numbers starting with dot (
.5
) are accepted in Numeric Widget - Add support for interacting with graph editor using touch devices.
- Implemented in-memory and database mixed
Decimal
column comparisons. - Relative paths are now resolved relative to the project location, also in the Cloud.
- Added Newline option to Text_Cleanse/Text_Replace.
- Support for reading from Tableau Hyper files.
- Mixed Decimal/Float arithmetic now throws an error; mixed comparisons now attach warnings.
- Support for creating Atoms in expressions.
- IO.print without new line
- Add
Text.to_decimal
. - Added
floor
,ceil
,trunc
to the in-memoryDecimal
column. - Added vectorized .round to the in-memory
Decimal
column. select_into_database_table
no longer defaults the primary key to the first column.- Extend the range of
floor
,ceil
,trunc
to values outside theLong
range. - Added
format
parameter toDecimal.parse
. - Added
format
parameter toFloat.parse
. - Implemented a cache for HTTP data requests, as well as a per-file response size limit.
- Overhauled Google Analytics APIs.
- Enforce conversion method return type
- Renaming launcher executable to ensoup
- Space-precedence does not apply to value-level operators
- Must specify
--repl
to enable debug server - Improved parser error reporting and performance
- "Add node" button is not obscured by output port
- Numeric Widget does not accept non-numeric input. This is to prevent node being completely altered by accidental code put to the widget.
- Redesigned "record control" panel. Now it contains more intuitive "refresh" and "write all" buttons.
- Warning messages do not obscure visualization buttons.
- Output component in collapsed function changed. It cannot be deleted anymore, except by directily editing the code.
- Improved handling of spacing around rounded node widgets, added support for widgets of arbitrary sizes.
- Multiselect drop-down widget visuals are improved.
- Text displayed in monospace and whitespace rendered as symbols.
- Renamed
Data.list_directory
toData.list
. Removed list support from read methods. - Renamed
Location.Start
toLocation.Left
andLocation.End
toLocation.Right
. - Renamed
Postgres_Details.Postgres
toPostgres.Server
. - Remove
First
andLast
from namespace, use auto-scoped. - Rename
Map
toDictionary
andSet
toHashset
. - Compare two objects with
Ordering.compare
and define comparator withComparable.new
- Added
dec
construction function for creatingDecimal
s. - Added initial read support for SQLServer
- Upgraded SQLite to version 3.46.1.
- Arrows navigation selected nodes may be moved around, or entire scene if no node is selected.
- Added a limit for dropdown width, implemented ellipsis and scrolling for long labels when hovered.
- Copy-pasting multiple nodes.
- The documentation editor has formatting toolbars.
- The documentation editor supports rendering images.
- Project may be renamed in Project View
- Fixed a bug where drop-down were not displayed for some arguments.
For example,
locale
parameter ofEqual_Ignore_Case
kind in join component. - Node previews: Node may be previewed by hovering output port while pressing Ctrl key (Cmd on macOS).
- Google Sheets clipboard support: Create a Table component when cells are pasted from Google Sheets.
- Fixed issue with two arrows being visible at once in drop-down widget.
- Fixed issue where picking "" variant in some ports disallowed changing it again.
- Added click through on table and vector visualisation clicking on index column will select row or value in seperate node
- Copied table-viz range pastes as Table component
- Added support for links in documentation panels.
- Added support for opening documentation in an external browser.
- Added a cloud file browser.
- Support for explicit --jvm option when launching
enso
CLI
- Added Statistic.Product
- Added Encoding.Default that tries to detect UTF-8 or UTF-16 encoding based on BOM
- Added
Decimal
column to the in-memory database, with some arithmetic operations. - Implemented
.cast
to and fromDecimal
columns for the in-memory database. - Implemented fallback to Windows-1252 encoding for
Encoding.Default
. - Added Table.duplicates component
- Renamed
Table.order_by
toTable.sort
- Implemented
Decimal
support for Postgres backend.
[debug-shortcuts]:
Please note that this release collects anonymous usage data which will be used to improve Enso and prepare it for a stable release. We will switch to opt-in data collection in stable version releases. The usage data will not contain your code (expressions above nodes), however, reported errors may contain brief snippets of out of context code that specifically leads to the error, like "the method 'foo' does not exist on Number". The following data will be collected:
- Session length.
- Project management events (project open, close, rename).
- Errors (IDE crashes, Project Manager errors, Language Server errors, Compiler errors).