Draft: Upgrade Monaco
What does this MR do and why?
The MR upgrades Monaco editor to version 0.33.0
.
0.34.0
right away?
Why not Great question. There are two reasons to this decision. First of all, this MR is already pretty dramatic change. With this mr we're getting to the latest version of monaco as close as possible. Secondly, 0.34.0 introduced some breaking changes which would require a separate process. The most prominent change is the introduction of the nested super.prop usage.
In version 0.31.0
Monaco introduced bundling with ESBuild. This broke a lot of Monaco for us so now we have to transform the editor files with Babel (check the webpack config changes in this MR). But, unfortunately, Babel has issues with transforming the nested super.props in particular.
How do we get to the latest version after all?
One possible option is to upgrade Webpack to version 5 to get a much better support for the contemporary JS and let webpack orchestrate monaco and related packages. Another option would be somehow work this around in babel. The second option will be evaluated in a separate MR.
Screenshots or screen recordings
The supposed to be no visual changes. Any visual changes could be considered a regression in this case, apparently.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #352976