Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Monaco upgrade process #7457

Closed
RomanNikitenko opened this issue Mar 31, 2020 · 5 comments
Closed

Improve Monaco upgrade process #7457

RomanNikitenko opened this issue Mar 31, 2020 · 5 comments
Assignees
Labels
enhancement issues that are enhancements to current functionality - nice to haves monaco issues related to monaco vscode issues related to VSCode compatibility

Comments

@RomanNikitenko
Copy link
Contributor

RomanNikitenko commented Mar 31, 2020

The issue is based on discussion with @akosyakov @azatsarynnyy @RomanNikitenko
The last upgrade Monaco PR: #7149

The main steps at upgrade Monaco version are the following:

  • upgrade monaco-languageclient
  • types' signatures alignment
  • editor configurations alignment
  • testing/fixing

What we could improve:

  • upgrade monaco-languageclient
    We have an issue to remove the dependency monaco-languageclient, please see the discussion here: remove dependency to monaco-languageclient #7100

  • types' signatures alignment
    This step is very time consuming one, so it would be nice to avoid working on it manually. Anton's (@akosyakov) idea is getting types from the corresponding version of VS Code automatically, for example, by generating index.d.ts file/files. We need more investigation regarding this step.
    Related issue: simplify checking monaco typings #7261

  • editor configurations alignment
    At last upgrade @RomanNikitenko did this kind of work in semi-automatic way:
    - read properties from editorOptionsRegistry of VS Code
    - write the data as Json to a file
    - copy to the codeEditorPreferenceProperties of Theia
    - check manually
    The idea for improvement from Anton: read these properties in @theia/monaco module of Theia and fill codeEditorPreferenceProperties.

  • testing/fixing
    At last upgrade Monaco version Anton provided integration tests: add integration tests for typescript language #7265. It helped to test the changes and will speed up the process of testing of next Monaco upgrade.
    We consider adding more tests to reduce manual testing, avoid regressions and provide more smooth process of upgrade.

@RomanNikitenko RomanNikitenko added enhancement issues that are enhancements to current functionality - nice to haves monaco issues related to monaco vscode issues related to VSCode compatibility labels Mar 31, 2020
@RomanNikitenko
Copy link
Contributor Author

@akosyakov @azatsarynnyy
Please feel free to edit the description, add comments and so on if I missed something
thanks!

@azatsarynnyy
Copy link
Member

@RomanNikitenko thank you for outlining the possible directions for improving Monaco upgrade process.

ATM working on these improvements is not in our short-term plans however, these are undoubtedly important directions that have to be considered before the next Monaco upgrade.
cc: @akosyakov ^^

@vince-fugnitto
Copy link
Member

@colin-grant-work would you agree that the upgrade process for monaco is now improved following the latest update?
For example we no longer rely on monaco-languageclient, the editor-preferences are now automated and for future upgrades things should be far simpler.

@colin-grant-work
Copy link
Contributor

colin-grant-work commented Mar 25, 2022

@vince-fugnitto I think the process is definitely better than it was before or than it was when this issue was opened. I'll assign this to myself, and I'll make a PR updating our documentation in the repo and - apart from the PR - in the wiki and close this that way. Keep up the pressure on me to actually do the documentation part :-).

@colin-grant-work colin-grant-work self-assigned this Mar 25, 2022
@colin-grant-work
Copy link
Contributor

Closing as done via #11331 where the steps for performing a Monaco upgrade are outlined.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement issues that are enhancements to current functionality - nice to haves monaco issues related to monaco vscode issues related to VSCode compatibility
Projects
None yet
Development

No branches or pull requests

4 participants