Commit Graph

5567 Commits

Author SHA1 Message Date
Dmitry Bushev
28946182c2
Fix nightly build (#11726)
followup #11517

It turned out that `env` context is not available in the `jobs.<job-id>.with` key.
2024-12-02 10:09:16 +00:00
Sergei Garin
979e0e361c
Fix copy and paste on local backend (#11701)
* Fix copy and paste on local backend

* Remove sorting order by modified date
2024-12-02 12:52:49 +03:00
Pavel Marek
bae9744825
Refactor runtime-integration-tests - move some tests to more dedicated packages (#11720)
* Add TypesExposeConstructorsTest

* Move some tests from org.enso.interpreter.test to dedicated packages
2024-12-02 10:10:40 +01:00
Kaz Wesley
0b6b1f0954
Context menu, copy button, multi-component actions (#11690)
Context menu, copy button, multi-component actions

https://github.com/user-attachments/assets/14243102-3848-43fc-82bb-a48648536985

- The 'More' menu can now be opened under the mouse, through the context menu action (right click/control-click on Mac/menu button on keyboard).
- Add copy-components button to menu.
- The menu can now be opened while multiple components are selected; if the clicked component was among the selected components, the selection will be preserved. Some menu actions--currently *copy* and *delete*, apply to all selected components. These actions will change their displayed labels when multiple components are selected. If a single-component action is executed, the component it was applied to will become the sole selection.

Fixes #11633, #11634
2024-11-29 19:52:22 +00:00
Jaroslav Tulach
52feef89ab
Better Module_Does_Not_Exist exception (#11713)
The previous code was throwing `UnknownIdentifierException` when a module wasn't found. That's pretty misleading. Especially when Truffle infrastructure converts such exception to another one. Enso has a dedicated error when module cannot be found. Let's use that one.
2024-11-29 19:05:04 +00:00
James Dunkerley
85c8f76805
Fix for Data Quality perf and issue other tweaks. (#11711)
- Fix bug where `DB_Table` data quality indicators broke deserialization in the table viz.
- Memorization of the untrimmed data quality indicator and move to it being an operation and column function.
- If more than 10,000 rows then use a sample for untrimmed.
- ALIASes for blank functions.
- Fix for Snowflake drill down.
- Bug fix for Long and Double columns with Nothings at end.
2024-11-29 17:54:40 +00:00
Adam Obuchowicz
99a91a1011
Add missing headerName (#11719)
Fixes #11718
2024-11-29 17:09:11 +00:00
Dmitry Bushev
9e143dbc6f
Fix inputs for scheduled Nightly workflow (#11708)
followup #11517

Another attempt to fix inputs for scheduled Nightly Release workflow.
2024-11-29 16:40:29 +00:00
Dmitry Bushev
d3e184b8c9
Use GitHub concurrency setting (#11704)
related #11579

Changelog:
- update: use workflow `concurrency` setting instead of running the action to cancel previous jobs
2024-11-29 14:16:55 +00:00
Radosław Waśko
dc55b4e9ce
Support for Table output in Data.read_many (#11546)
- Closes #11311
2024-11-29 12:06:30 +00:00
Sergei Garin
1476c47fa9
Tiny fixes in animations (#11706)
This PR improves the behavior of `useMeasure`: it used to ignore measuring the initial bounds if it's disabled by default. Now the behavior is fixed.

Also this PR removes the scrollbar appearing while resizing.
2024-11-29 11:13:37 +00:00
Sergei Garin
9592a60fea
Put vitest into the root (#11693) 2024-11-29 11:44:38 +03:00
Sergei Garin
0c7e79cccf
Fix resize animations in Dialog (#11643)
This PR fixes the Resize animations in Dialog component:

1. Removes resize for initial mount / fullscreen dialogs
2. Fixes measuring the content size
3. Fixes bugs in `useMeasure` hook
4. Adds memoization for Text and Loader components (because of react-compiler and because this components accept only primitive values)
2024-11-28 19:15:34 +00:00
Pavel Marek
b5f110617e
More IR mini passes (#11501)
Mega passes  converted to minipasses in `Passes.globalTypingPasses` group:
4e6837f9da/engine/runtime-compiler/src/main/scala/org/enso/compiler/Passes.scala (L41-L63)

Are:
- [MethodDefinitions](a3321fee97/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/resolve/MethodDefinitions.java)
- [ImportSymbolAnalysis](8d9db8fe01/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/ImportSymbolAnalysis.java)
- [AmbiguousImportsAnalysis](8d9db8fe01/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/AmbiguousImportsAnalysis.java)
- [PrivateModuleAnalysis](8d9db8fe01/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/PrivateModuleAnalysis.java)
- [PrivateConstructorAnalysis](303c9fe545/engine/runtime-compiler/src/main/java/org/enso/compiler/pass/analyse/PrivateConstructorAnalysis.java)

All of these mini passes are ordered after each other. So now, in `Passes.globalTypingPasses` group, there are **8** consecutive minipasses.
2024-11-28 18:00:42 +00:00
Adam Obuchowicz
6d9699c841
Bump AGGrid version (#11684)
* Bump AGGrid version + some fixes

* Make styles in AgGridTableView global

* CHANGELOG

* Remove debug logs

* Fix integration test

* Fix unit test

---------

Co-authored-by: James Dunkerley <jdunkerley@users.noreply.github.com>
2024-11-28 14:40:29 +00:00
Adam Obuchowicz
fe299b2b3b
Tiny look improvements (#11666)
Part of https://github.com/enso-org/enso/issues/11510

1. Default values are italic
![image](https://github.com/user-attachments/assets/509a9d32-4263-4563-aad9-e7a9ee7bc039)

2. The Text widget actually displays default values as placeholders (before it was a normal text).
![image](https://github.com/user-attachments/assets/73c32317-ac15-4f1d-8824-7cc445ae47ce)

3. No more "grab" cursor over node's icon.
![image](https://github.com/user-attachments/assets/49939283-891e-4fc4-93bc-7d0c4ed7b295)
2024-11-28 13:48:19 +00:00
somebody1234
27a4bdc6b8
Fix local settings button not switching settings tab (#11677)
- Make sure both settings tab and page are changed when the button next to the "Local" category is clicked
- Hide "save" and "cancel" button in settings sections if the user can't edit any of the inputs
- Disable all dragging out of "trash" category (specifically, "trash" to "cloud" category)

# Important Notes
None
2024-11-28 10:36:19 +00:00
AdRiley
cd31e16af0
Fixes #10835 (#11636) 2024-11-28 09:23:05 +00:00
Gregory Michael Travis
99928b8ab8
Reissue request when cached tempfile is missing (#11689)
* reissue request if cache file is deleted

* docs

* fmt
2024-11-28 08:37:17 +00:00
Sergei Garin
88ba6fa8b8
Dashboard Issues (#11685)
Closes: https://github.com/enso-org/cloud-v2/issues/1592
2024-11-27 21:20:36 +00:00
Pavel Marek
5d7e89b50b
Fix displaying of host values in chrome devtools (#11468)
Chrome inspector now displays polyglot objects that have a corresponding Enso builtin type as enso objects:

![image](https://github.com/user-attachments/assets/c9dfee50-9cbb-45ed-b602-74ad3a663a4b)
2024-11-27 18:45:24 +00:00
Hubert Plociniczak
456031b37f
Delegate slf4j in HostClassLoader to system class loader (#11670)
* Delegate slf4j in HostClassLoader to system class loader

That way in Enso and Java code any usage of slf4j will use the same
configuration as the rest of the process that started it.
Tricky to test, will post an example in GH PR.

* Semi-working test

* Make sure memory appender starts clean

Appender is re-used among many tests, collecting all logs. This is
problematic when we want to test the contents of logs.
2024-11-27 16:41:24 +01:00
James Dunkerley
4194e1fafa
Conditionally trigger AMI build. (#11680)
Disabling causing the rebuild of AMIs so we can control the release in the cloud.
Nightlies pushed to the ECR but not AMI built.
Manual releases will be built and become the image run.
To be improved later.
2024-11-27 14:59:50 +00:00
Adam Obuchowicz
736134e491
Add traces to integration tests + suppress one flaky assertion. (#11595)
Fixes #11604

Most issues were caused by a problem with Project List flooding the network with its requests - this was fixed on develop.
But one assertion was flaky - it assumed we will see the "real" run result on `write` node, but sometimes it is immediately overwritten by dry run.

But the most important part of this PR is adding traces to Electron packages - it's should be much easier now to debug E2E test failures.

Also renamed the previously misnamed "E2E tests" to "[GUI] integration tests".
2024-11-27 14:09:59 +00:00
Sergei Garin
b0863e9ca4
FIx interval for Cloud project when opening (#11676) 2024-11-27 17:04:48 +03:00
Radosław Waśko
dcc7661c32
Update Enso_File download to Cloud API changes, fix missing Cloud tests (#11596)
- As asked for by @PabloBuchu, related to https://github.com/enso-org/cloud-v2/pull/1580/
- Fixes nightly Extra tests:
- Ensures that the Cloud suite **is actually ran**
- Enables logging of all tests and the Test Report on the nightly to make it possible to inspect what was being run.
2024-11-27 13:01:45 +00:00
marthasharkey
008a7fb85e
Add date support for filter drilldown (#11626)
![filter-drilldown-date](https://github.com/user-attachments/assets/9574a172-95af-41c6-aef1-a586ee6cda98)
![filter-drilldown-time](https://github.com/user-attachments/assets/9fd5c3f0-0594-4d9c-8c00-c9616ae997be)

Date Time using Date_Time.parse
![date-drilldown-date-time-1](https://github.com/user-attachments/assets/9960cdba-8f13-4f72-9c11-b681ae63e988)
![date-drilldown-date-time-2](https://github.com/user-attachments/assets/caaeb53d-8d2e-4332-aaa4-3d3e210a0893)
2024-11-27 12:30:59 +00:00
Dmitry Bushev
2e6d4b2695
Fix scheduled nightly release (#11675)
Followup to #11517

Fixes the scheduled dispatch of Nightly Release workflow. The scheduled dispatch requires the `workflow_call` section specifying the inputs.
2024-11-27 11:38:34 +00:00
Dmitry Bushev
691315457f
Fix std-benchmarks module path (#11674)
Fixes the `sbt std-benchmarks/run` runtime module path. Before #11615 the `std-benchmarks` had `logging-service-logback` as a [transitive dependency of the `ydoc-server`](https://github.com/enso-org/enso/pull/11615/files#diff-5634c415cd8c8504fdb973a3ed092300b43c4b8fc1e184f7249eb29a55511f91L4052). Now is should be provided explicitly.
2024-11-27 09:39:24 +00:00
Kaz Wesley
7eca04a522
: operator is left-associative (#11671)
Adjust operator parsing to allow chained conversions, like `3.14 : Integer : Text`.

Change the precedence and associativity of the `:` operator, when used as a binary operator in an expression:
- It is now **left-associative**
- It now has **lower** precedence than `->` (previously they were equal)

# Important Notes
One previously-reasonable syntax has **changed interpretation**: `x->x:Type` is no longer a valid way to write a casting function, and would likely result in a type error. There was 1 instance of this syntax in our .enso sources.
2024-11-27 04:45:39 +00:00
Dmitry Bushev
d2fb4a2dd5
Update licenses codeowners (#11663)
Currently, license directories are owned by both libs (`/distribution/` entry) and engine (`/tools/` entry) teams, and require review from both teams even though there are no related changes in the PR.

License changes are caused by changed dependencies in either libs or the engine. By making the license directories unowned, only the necessary reviewers will be added to the PR
2024-11-26 18:23:51 +00:00
Kaz Wesley
9ddd8417b2
Fix output edges; add unit and integration testing. (#11637)
Fix output edges; add unit and integration testing for output and input edges.

Fixes #11635.
2024-11-26 17:37:57 +00:00
Dmitry Bushev
56e3e1c991
Build Ydoc on CI (#11517)
close #11478

Changelog:
- add: `run release deploy-ydoc-polyglot` and `run release deploy-ydoc-nodejs` commands that build Ydoc Docker images and push them to ECR repository
- add: Ydoc native-image build for Linux PR checks
- update: CI release configuration to deploy (push to ECR repo) Ydoc Docker images during the Nightly and Release steps
2024-11-26 16:51:27 +00:00
Dmitry Bushev
3749f1057e
Fix RuntimeAsyncCommandsTest (#11668)
Fixes occasional issues on CI https://github.com/enso-org/enso/actions/runs/12028665644/job/33537703634?pr=11663#step:7:3840
```
- should interrupt running execution context *** FAILED *** (2 seconds, 295 milliseconds)
0 did not equal 1 (RuntimeAsyncCommandsTest.scala:254)
```

The issue is caused by the asynchronous nature of the test. By the point when the interrupt command is sent the program is already terminated but the test assumes that the program is still running.
2024-11-26 15:33:08 +00:00
Jaroslav Tulach
e06e234d53
Robust again IllegalArgumentException (#11662) 2024-11-26 14:33:18 +01:00
Sergei Garin
cf85c0b40b
Report status code 1 if checks fail (#11645)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2024-11-26 10:23:37 +00:00
Kaz Wesley
190029996c
Fix teleporter crash and integration tests (#11656)
Fix failing integration tests:
- Fix a Vue Teleporter crash that became reachable when the dropdown arrow is displayed more often (#11620).
- Fix a new drag-and-drop test that didn't work in CI.
- Update mock data for multi-type expression updates (https://github.com/enso-org/enso/pull/11583).

# Important Notes
- The new `ConditionalTeleport` component should be used for any `Teleport` that uses the `disabled` prop and has a `to` that isn't always a valid teleportation target.
2024-11-26 09:22:41 +00:00
marthasharkey
582a9aaa3d
Drive data quality metrics from enso code (#11638)
If a data quality metric is added to the array sent in the table viz json for a table/column the metric will be added to the columns tooltip without the need for any frontend/ts changes.

This doesn't change anything for the users but here is a screenshot to show the same functionality:
![dqm-enso-driven](https://github.com/user-attachments/assets/7bf83d35-0d63-49ac-8d70-1f86dbedc169)
2024-11-25 23:01:09 +00:00
Dmitry Bushev
3d6ca032de
Ydoc library (#11615)
`ydoc-server` compilation requires generation of `ydoc.cjs` resource that can take time and slow down the libraries development (building the enso distribution). This PR splits Ydoc into a library and the server part to avoid JS resources generation during the compilation of the language server.

Changelog:
- refactor: Ydoc into ~~`ydoc`~~ `ydoc-polyglot` library and  `ydoc-server` server parts
- update: language server to depend on the ~~`ydoc`~~ `ydoc-polyglot` library
2024-11-25 17:54:25 +00:00
Ilya Bogdanov
b5f93f065e
Implement partially transparent visualizations (#11582)
Closes #11534

- Visualizations are partially transparent by default
- The initial z-order is undetermined at the project load
- Node is moved on top of other if it is dragged (before it only happened if it was **selected**, which is not the same)
- Changed rendering for edges slightly, to avoid visible edge ends underneath visualization. The implementation of additional offsets is rather naive, but it works.

https://github.com/user-attachments/assets/fba44816-eed9-471d-83a7-8fe6e5892477
2024-11-25 13:28:37 +00:00
Jaroslav Tulach
1cc3848c5a
Avoid exposing EnsoMultiValue getters (#11642)
Another step in the #11482 work. Avoid accessing internals of `EnsoMultiValue`. Use `TypeOfNode` methods (as provided by #11618) instead.
2024-11-25 13:14:11 +00:00
Dmitry Bushev
e5a65a26cb
Update message handler supervisor to watch children (#11630)
close #11248

Changelog:
- update: bind message handler supervisor lifetime to the message handler lifetime
2024-11-22 16:48:05 +00:00
Dmitry Bushev
2b9ed57a95
Deliver full intersection type of a value to the IDE (#11583)
close #11481

Changelog:
- update: handle `MultiTypeValue` results in the execution instrument
- update: language server protocol supports multi-type values
- update: GUI uses only the first type of a multi-type value when

# Important Notes
GUI uses only the first type of the intersection. See the difference between `Integer&Text` and `Text&Integer`:

https://github.com/user-attachments/assets/29efc89b-c223-4043-8dff-9cdae1987f0c
2024-11-22 16:41:31 +00:00
Sergei Garin
789eab8893
Reduce pw tests timeouts (#11629)
This PR sets back the timeouts value to 25 secs from 60 secs we had
2024-11-22 16:07:34 +00:00
Kaz Wesley
a2e87d37a9
Look and feel: Lists and dropdowns (#11620)
https://github.com/user-attachments/assets/d8c039e6-670c-4ff5-9d71-c07ee6114570

Lists:
- Drag handles are icons.
- List controls are shown only when component is sole selection.
- Each item has delete button.
- Integration tests cover dragging, adding, removing.

https://github.com/user-attachments/assets/58054cb2-22bc-4279-850c-0bc4929fc246

Dropdowns:
- Arrows are shown when hovered or component is sole selection.
- Arrows change opacity when hovered.

Implements #11533.
2024-11-22 14:55:23 +00:00
Radosław Waśko
dcabf6d0ae
Avoid printing expected exceptions inside HTTP tests (#11607) 2024-11-22 14:31:22 +00:00
Sergei Garin
8891051475
Fix Visuals of The Selector Component (#11628)
This PR fixes a bug when Selector component has wrong visuals when selected

Also, this PR fixes visual inconsistencies and bugs in this component.
2024-11-22 14:03:41 +00:00
Jaroslav Tulach
7c5e69219c
Giving TypeOfNode richer query API (#11618) 2024-11-22 07:58:30 +01:00
Kaz Wesley
d611939132
New alias analysis API (#11621)
Higher level API will be compatible with a future implementation that doesn't depend on `RawAst` (see: #10753).
2024-11-21 23:42:20 +00:00
AdRiley
92bf61c9ff
add-grab-icon (#11616) 2024-11-21 20:25:21 +00:00