enso/engine
Jaroslav Tulach af24f5e543
Prevent reading broken IR caches by changing their serialVersionUID (#3692)
Many engine PRs modify builtins or other engine internals and then they are subject to [incremental CI runtime errors](https://www.pivotaltracker.com/n/projects/2539304/stories/182868680) as outdated `IR` caches from global space at `~/.local/share/enso/cache/ir/Standard/Builtins/0.0.0-dev/0.0.0-dev/Standard/Builtins` are read in.

This PR provides solution for that problem by explicitly defining `IR.Module` `serialVersionUID`. By changing the `serialVersionUID` one prevents previously saved `IR` caches to be loaded into the running process. Change the `serialVersionUID` whenever you see errors caused by reading outdated `IR` caches in the CI.

# Important Notes
Whenever one needs to avoid loading previous `IR` caches, go to `case class IR.Module` and change the `@SerialVersionUID(3692L)` to **number of your pull request**.
2022-09-09 12:01:53 +00:00
..
language-server create inmem database (#3690) 2022-09-07 12:59:18 +03:00
launcher/src Update Scala to 2.13.8 (#3631) 2022-08-08 19:32:55 +00:00
polyglot-api/src IDE uses new visualization API (#3661) 2022-09-01 15:33:46 +03:00
runner Remove a leftover debug print (#3676) 2022-08-31 12:28:41 +00:00
runtime Prevent reading broken IR caches by changing their serialVersionUID (#3692) 2022-09-09 12:01:53 +00:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument Enable caching in visualization functions (#3618) 2022-08-10 12:01:33 +00:00
runtime-instrument-repl-debugger/src/main/java/org/enso/interpreter/instrument Get rid of free-floating atoms. Everything has a type now! (#3671) 2022-08-30 22:54:53 +00:00
runtime-instrument-runtime-server/src/main/java/org/enso/interpreter/instrument Register instruments/language in their own compilation units to fix the sbt build issues (#3509) 2022-06-13 14:09:08 +00:00
runtime-language-epb/src/main/java/org/enso/interpreter/epb Builtin Date_Time, Time_Of_Day, Zone (#3658) 2022-08-24 12:31:29 +02:00
runtime-with-instruments/src/test IDE uses new visualization API (#3661) 2022-09-01 15:33:46 +03:00
README.md Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00

The Enso Engine

The Enso engine is the codebase responsible for compiling and executing Enso code, as well as providing language server functionality to users of the language. It is subdivided into two major components:

  • Language Server: The Enso language service.
  • Polyglot API: The truffle-boundary safe API for communication between the language server and the runtime.
  • Runner: The command-line interface for Enso.
  • Runtime: The compiler and interpreter for Enso.