enso/tools
Hubert Plociniczak 4da5e611c9
Replace Jackson serde (#10035)
JSON serialization setup between Language Server and Runtime is a major contributor to startup time. This PR experiments with an alternative implementation that remedies the problem.
The new serializer uses [jsoniter-scala](https://github.com/plokhotnyuk/jsoniter-scala) which by some accounts claims to be really fast. In our case, more importantly, we pay negligible cost of startup setup compared to Jackson which was horribly slow.

# Important Notes
Before:
![Screenshot from 2024-06-06 15-35-18](https://github.com/enso-org/enso/assets/292128/56103b82-777e-459f-966e-abdef25c2430)
After:
![Screenshot from 2024-06-06 15-35-02](https://github.com/enso-org/enso/assets/292128/00a36647-dfae-4dc8-a1b7-bf69069ef109)

Yes. About 0.8sec.
2024-06-11 15:03:12 +00:00
..
build-performance Faster dev builds; tooling for measuring build times and app performance. (#3491) 2022-06-02 19:24:18 +00:00
ci Expose Ydoc port in Docker container (#10210) 2024-06-07 13:51:06 +00:00
enso4igv Updating IGV documentation (#10193) 2024-06-06 16:36:27 +00:00
graphmod Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00
http-test-helper Prepare for the Path resolver change to GET (#9958) 2024-05-15 13:00:32 +00:00
language-server Bump clap to v4 (#9595) 2024-04-03 11:32:03 +00:00
legal-review Replace Jackson serde (#10035) 2024-06-11 15:03:12 +00:00
legal-review-helper Followup improvements to the license review tool (#9895) 2024-05-11 07:51:11 +00:00
native-image-config-cleanup Apply unified prettier style to engine codebase (#3145) 2021-11-08 16:45:29 +01:00
performance Fix the CSV file generation of bench_download script (#9421) 2024-03-14 11:59:58 +00:00
simple-library-server Remove akka from runtime (#8953) 2024-02-19 16:39:05 +00:00
README.md Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00

Enso Tools

This folder contains various tools and utilities that aid in the development of the Enso programming language. It should not be used as a dumping ground for things that have better places, but instead is used to hold things that should be part of this repository but do not have another sensible place for them.