Skip to content

Update Monaco to latest (0.55.1)#5508

Merged
knolleary merged 4 commits intodevfrom
monaco_0_55_1
Mar 5, 2026
Merged

Update Monaco to latest (0.55.1)#5508
knolleary merged 4 commits intodevfrom
monaco_0_55_1

Conversation

@Steve-Mcl
Copy link
Copy Markdown
Contributor

@Steve-Mcl Steve-Mcl commented Mar 2, 2026

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

Proposed changes

Update Monaco to latest (0.55.1 at time of writing)

NOTES

  • Some Monaco APIs have been deprecated. These are taken care of in 64727fc
    • In short, codeEditor.monaco.languages.lang.xxx changes to codeEditor.monaco.lang.xxx
    • Any users overriding Monaco behaviour in settings will need to adjust their overrides to match - may be worth calling out in NR 5 release?
  • Monaco now has working support for NLS (i18n) in its ESM build. Therefore the lang packs have changed from large JS look ups to streamlined arrays and some of the pack names are different. This is taken care of in monaco-bootstrap.js

Checklist

  • I have read the contribution guidelines
  • For non-bugfix PRs, I have discussed this change on the forum/slack team.
  • I have run npm run test to verify the unit tests pass
  • I have added suitable unit tests to cover the new/changed functionality

@knolleary
Copy link
Copy Markdown
Member

Any users overriding Monaco behaviour in settings will need to adjust their overrides to match - may be worth calling out in NR 5 release?

Can you provide some suitable text that covers this?

@knolleary knolleary merged commit 2c1f150 into dev Mar 5, 2026
5 checks passed
@knolleary knolleary deleted the monaco_0_55_1 branch March 5, 2026 09:47
@Steve-Mcl
Copy link
Copy Markdown
Contributor Author

Steve-Mcl commented Mar 5, 2026

Can you provide some suitable text that covers this?

If a user has added (for example) any language overrides to their settings.js file:

        codeEditor: {
            lib: "monaco",
            monaco: {
                languages : {
                    typescript: {
                        javascriptDefaults: {
                            diagnosticsOptions: {
                                noSemanticValidation: true,
                                noSyntaxValidation: true,
                                diagnosticCodesToIgnore: []
                            }
                        }
                    }
                }
            }
        }

it will need to be adjusted to match the new APIs in Monaco

        codeEditor: {
            lib: "monaco",
            monaco: {
                typescript: { // << note  `languages` is now not used/deprecated - use the lang directly off monaco
                    javascriptDefaults: {
                        diagnosticsOptions: {
                            noSemanticValidation: true,
                            noSyntaxValidation: true,
                            diagnosticCodesToIgnore: []
                        }
                    }
                }
            }
        }

These are listed in the monaco online docs: https://microsoft.github.io/monaco-editor/docs.html

In short: any monaco extra config you may have had setup under codeEditor.monaco.languages.lang.langDefaults.xyz is now one level up at codeEditor.monaco.lang.langDefaults.xyz


Over the last 4y I remember mo more than 2 people asking about this (And I am pretty sure I talked them out of fiddling with these settings) - so I an reasonably confident it is not widespread. The worst that happens is the users old settings are ignored and suddenly they get default behaviour (e.g. type checking switched on etc)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants