Commit Graph

5482 Commits

Author SHA1 Message Date
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
Kaz Wesley
c431a6bd2e
Autolinks in documentation editor (#11597) 2024-11-21 20:24:57 +00:00
Kaz Wesley
7af540365f
CodeMirror implementation of GraphNodeComment (#11585) 2024-11-21 18:43:23 +00:00
Dmitry Bushev
8930387693
Fix runtime-instrument-common benchmark (#11619) 2024-11-21 18:42:43 +00:00
Paweł Grabarz
0e31169782
Attempt to fix broken envs during build (#11584) 2024-11-21 18:39:57 +00:00
Sergei Garin
7b0184993c
Update autoAccept branch to develop and add comment only on PRs (#11614) 2024-11-21 18:24:48 +00:00
marthasharkey
731c884dfe
use equals when only one item is selected in filter dropdown (#11613) 2024-11-21 15:49:06 +00:00
somebody1234
8c2e2af5f7
Fix React Compiler lints + improve performance (#11450) 2024-11-21 13:49:30 +00:00
Ilya Bogdanov
80ae5823dd
Table.input instead of Table.new (#11612) 2024-11-21 12:19:04 +00:00
Ilya Bogdanov
6b758a0938
Fix auto-scrolling and increase permitted dropdown width (#11608)
I think the date format dropdown is absurdly wide, but we discussed it yesterday. Auto-scrolling is fixed, so it would work with wider inputs.

<img width="766" alt="image" src="https://github.com/user-attachments/assets/2d230e39-68bb-4ed3-81db-2458385c8b44">
2024-11-21 11:26:50 +00:00
Sergei Garin
8e9e7650a3
Add storybook support (#11522) 2024-11-21 10:52:20 +00:00
Dmitry Bushev
3a4ac4f381
Fix compilation error in integration tests (#11611) 2024-11-21 09:59:39 +00:00
Ilya Bogdanov
b166336022
Component menu improvements (#11592)
Closes #11431

<img width="283" alt="Screenshot 2024-11-19 at 5 29 22 PM" src="https://github.com/user-attachments/assets/f46fb5a2-7668-4bc7-9cb4-fbde26417b79">

# Important Notes
- I changed readable names for mouse buttons. Now they are `Click`, `Right click`, `Middle click` instead of `Mouse Left`, `MouseRight`, `Mouse Middle`. I would like to go with `LMB`, `RMB`, etc. but I understand it can be confusing. @AdRiley if you have some specific names in mind let me know.
2024-11-21 09:40:12 +00:00
somebody1234
0e51ce63f8
"Save" and "Cancel" buttons for settings sections (#11290) 2024-11-21 08:26:42 +00:00
Gregory Michael Travis
39a176e61b
Don't log stack trace in cache tests (#11610) 2024-11-21 08:22:41 +00:00
marthasharkey
76ad3475c8
fix filter node drilldown for number columns (#11572) 2024-11-21 00:02:36 +00:00
somebody1234
2fd29a5825
Make sure "new label" button is always visible even when labels panel has scrollbar (#11586)
- Move "new label" button outside of scroll container so that it is always visible

# Important Notes
None
2024-11-20 21:59:13 +00:00
somebody1234
96b21f2b97
Fix dialog entry animations and size (#11565)
- Stop resizing when `Dialog`s first render
- Fix `Dialog type="fullscreen"`s being smaller than before
- Check the "Discover" button in the top left to see a fullscreen modal.

# Important Notes
None
2024-11-20 21:47:11 +00:00
somebody1234
59493c94cb
Fix keyboard shortcuts settings display (#11467)
- Add border to keyboard shortcuts to make them more distinct from each other
- Move scrollbar to table so the header becomes sticky

# Important Notes
None
2024-11-20 20:43:49 +00:00
AdRiley
a9ec0e36a2
Enable Union feature and make tests pass (#11587) 2024-11-20 19:48:00 +00:00
Jaroslav Tulach
afe4203f6a
Invoke Warning.getValue().to_text and use it from ReplDebuggerInstrument (#11591)
Fixes #11569 by using `.to_text` on the right _warning's value_ (as introduced by #10842) and sharing the code with the instrument.
2024-11-20 17:31:33 +00:00
somebody1234
f0a04b4e52
Wrap asset creation in a Promise (#11396)
- Close https://github.com/enso-org/cloud-v2/issues/1560
- Switch from "event"s to async functions so that new asset creation can be awaited

# Important Notes
None
2024-11-20 16:44:11 +00:00
somebody1234
d8330c9bc5
Use proxied auth endpoint for Cognito (#11387)
- Close https://github.com/enso-org/cloud-v2/issues/1552
- Switch to proxied endpoint for Cognito to enforce account lockout rate limits

# Important Notes
None
2024-11-20 15:54:48 +00:00
Jaroslav Tulach
b3588490db
Give DebugBreakpointNode some section to prevent NPE (#11594)
Fixes `NullPointerException` by giving `DebugBreakpointNode` a source section.
2024-11-20 15:20:10 +00:00
Pavel Marek
04075c5ed7
Implement hasLanguage interop message for all enso objects (#11538)
* EnsoObject is an abstract class, not an interface.

- Also, EnsoObject exports hasLanguage and getLanguage interop messages.
- BranchRecord converted to class

* Implement public getters in BranchResult

* Fix compilation of EnsoFile

* Add test that all enso values must have language

* Revert EnsoException - remove

* DataflowError and PanicException implement hasLanguage and getLanguage

* DataflowError is not EnsoObject - change signatures in some builtins

* Add more members to Module.isMemberInvocable.

Keep in sync with doInvoke.

* Revert "DataflowError and PanicException implement hasLanguage and getLanguage"

This reverts commit b30f3961b7.

* Update the test - test only non-primitive and non-exception values

* Fix indexes in CodeLocationsTest

* Add more members to Function.isMemberInvocable

Keep in sync with doInvoke.

* EnsoObject.toDisplayString delegates to toString method

* EnsoObject.toDisplayString is behind TruffleBoundary

* Warning exports InteropLibrary which delegates to value.

With the exception of toDisplayString message.

* WithWarnings needs to explicitly export toDisplayString.

It is not automatically delegated because it is implemented in the super type.

* EnsoObject.toDisplayString just throws AssertionError

* AssertionError is behind TruffleBoundary

* Implement toDisplayString on some truffle objects

* Warning exports WarningsLibrary

* Revert "Warning exports WarningsLibrary"

This reverts commit a06c672db5.

* Add some warnings test

* Warning.isNull is always false

Even if it wraps Nothing

* Add some unnecessary methods to fix the compilation

* EnsoObject.toDisplayString is abstract

* ImportExportScope.toDisplayString is behind TruffleBoundary.

This fixes native-image build of engine-runner.

* Hide some toDisplayString methods behind TruffleBoundary

This fixes native-image build of engine-runner.
Bypassing failing test.
2024-11-20 13:23:33 +00:00
Adam Obuchowicz
2ae1c904ef
Ignore E2E CI tests on Windows (#11602)
The integration tests are constantly failing on Windows. For the time of investigation, they should be suppressed.
2024-11-20 12:25:52 +00:00
somebody1234
c72cef305d
Fix Datalink inputs (#11376)
* Stop validating optional Data Link fields

* Fix incorrect default value in Datalink input

* Stop `Autocomplete` fields from opening automatically without
`autoFocus`

* Increase E2E test timeout

* Fix E2E test race condition?

* Fix error message for empty string input

* Highlight active Datalink input

* Show description when Datalink input is invalid

* Fix Datalink input unfocusing when errors appear

* Fix `enso://` path error text

* Fix hover display of autocomplete items

* Move `Autocomplete` tooltip above Dropdown container

* Update Enso path validation

* Update test file and Enso File datalink regex

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Bypassing failing tests.
2024-11-20 11:02:46 +00:00
AdRiley
7327df88c3
Complete migration to Dialect/Feature flags + SQLServer support for Datetime (#11527)
* Supports_Sort_Digits_As_Numbers

* case_insensitive_ordering

* Case_Insensitive_Ordering

* Case_Insensitive_Ordering

* Enable tests

* Case_Insensitive_Non_Ascii

* Order_By_Unicode_Normalization_By_Default

* Allows_Mixed_Type_Comparisons

* Supports_Unicode_Normalization

* NaN_Non_Comparable

* Distinct_Returns_First_Row_From_Group_If_Ordered

* Datetime support

* refactor

* refactor

* Refactor

* Move remaining flags

* Cleanup

* sbt javafmtAll

* Fix

* Fix tests

* Code review changes

* More date_diff month tests

* Fix sowflake

* Fix snowflake tests

Bypassing failing test.
2024-11-20 10:41:49 +00:00
Kaz Wesley
70253e73ed
Render tables in documentation. (#11564)
* Render tables in documentation.

Also:
- Separate parser for our flavor of Markdown from the CodeMirror integration;
  move the parser into ydoc-shared and use for Markdown line-wrapping.
- Introduce our own version of yCollab extension; initially just the upstream
  version translated to Typescript and our code style.
- Refactor CodeEditor.

* CHANGELOG, prettier

* Apply @farmaazon review.

* Fix

* Lint

* Cleanup

* Integration tests for GraphNodeComment

Also a little refactoring in preparation for new implementation.

* Workaround stuck CI

* Revert "Workaround stuck CI"

This reverts commit 74313842ba.

* Fix merge

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2024-11-20 10:40:24 +00:00
Ilya Bogdanov
d71781f9bd
New node colors (#11578)
* Show halo only on hover

* Fix numeric input widget. (#11561)

* Invert node colors, make edited widgets more prominent

---------

Co-authored-by: Paweł Grabarz <frizi09@gmail.com>

Skipping failing test in GUI packaging.
Nothing changes in Microsoft space.
2024-11-20 10:38:10 +00:00
Ilya Bogdanov
21cbf25067
Edges always end with arrows (#11590)
Bypassing the failing test.
2024-11-20 09:54:20 +00:00
Jaroslav Tulach
d862a3cf08
HostValueToEnsoNode is not a builtin (#11593)
Bypassing failing check.
2024-11-20 08:15:36 +00:00
Jaroslav Tulach
ad9d0e5ab5
Allow (42 : Text & Integer) at the end of function (#11588)
Bypassing failing check.
2024-11-20 08:14:38 +00:00
somebody1234
bab9addeb4
Bump Node version in Nix flake (#11580)
- Bump Node.JS version to match `.node-version`:

6b810ee1e6/.node-version (L1)
2024-11-19 17:44:58 +00:00
Jaroslav Tulach
3d8a0e1b90
Multi value Complex test and robustness refactoring (#11525)
While working on #11482 and enhancing the tests suite with more tests based on `type Complex` a [getRootNode() did not terminate in 100000 iterations](https://github.com/enso-org/enso/pull/11525#issuecomment-2476171597) problem was discovered. Detailed investigation revealed that the existing `ReadArgumentCheckNode` infrastructure was able to create a **cycle** of parent pointers in the Truffle AST.

The problem was in intricate manipulation of the AST while rewriting internals in `ReadArgumentCheckNode`. This PR avoids such manipulation by _refactoring the type checking code_. `ReadArgumentNode` knows nothing about types anymore. When a type check is needed, `IrToTruffle` adds additional `TypeCheckValueNode.wrap` around the `ReadArgumentNode` - that breaks the **vicious circle**.

All the _type checks_ nodes are moved to its own package. All but one of the classes are made package private. The external API for doing _type checking_ is concentrated into `TypeCheckValueNode`.
2024-11-19 17:04:42 +00:00
Adam Obuchowicz
af39e0ec50
Pasting image in Documentation Editor (#11547)
Fixes #10059

https://github.com/user-attachments/assets/a528e26a-b388-4a2a-9bf4-3ccc734373f6

# Important Notes
* I put the logic for project's files management to a single composable "projectFiles"
2024-11-19 15:47:46 +00:00