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.
- 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
- 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
* 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.
* 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>
* 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.
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`.
Fixes `--jvm` option, given to the native image. This was failing on my machine, because when given `--jvm` option, the runner was trying to find the `java` executable from the distribution manager's runtime (on my system located in `~/.local/share/enso/runtime`) and it used the first runtime found. But the first runtime on my system is JDK 17.
The `--jvm` option now tries to:
- Find a JDK from the distribution manager that has the same version as the JDK used for building the engine.
- If there is not an exact version match, it tries to find a runtime from distribution manager that is *newer*.
- If none, fallback to system-wide search
- System-wide search tries to find `java` from `$JAVA_HOME` and from `$PATH`. But this is just a fallback.
# Important Notes
- Added test to Engine CI jobs that pass `--jvm` argument to a native image of engine-runner
- ea3af5ffbc
- `runtime-version-manager` sbt project migrated to a JPMS module
- `engine-runner` now depends on `runtime-version-manager`.
- Removed unnecessary stuff in `runtime-version-manager` dealing with outdated `gu` Graal Updater utility.
- Extracted [GraalVersionManager](1455b025cb/lib/scala/runtime-version-manager/src/main/java/org/enso/runtimeversionmanager/components/GraalVersionManager.java) from [RuntimeVersionManager](d2e8994700/lib/scala/runtime-version-manager/src/main/scala/org/enso/runtimeversionmanager/components/RuntimeVersionManager.scala)