-
Notifications
You must be signed in to change notification settings - Fork 36
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
Upgrade to C# 8.0 and disable NRT during type generation #47
Conversation
hez2010
commented
Apr 17, 2020
•
edited
Loading
edited
- Upgrade to C# 8.0 so that the new switch expression can be used in project
- Disable NRT in type generation
WebView isn't compatible with monaco 0.23+, I'm closing this PR. |
Hey @hez2010 sorry I've been quiet on this for so long, been heads down at work. My plan is to investigate splitting apart the main generated parts to .NET so we can shim on top of different WebView/2 projections for different frameworks. Is there an issue open on the Monaco repo about the broken Edge support? They don't call it out in their readme, only IE. I know there's an open issue about AddHostObjectToScript, so I'm hoping that'll come soon, though I'd still want to support UWP for another year, so I think we may have to stay back on the Monaco version. |
I've generated full bindings for monaco editor using TypedocConverter and applied some modifications to it, also implemented relevant methods for https://gist.github.com/hez2010/3d3e493f8e434f1dc758438c4a2c9dab Still needs some minor modifications if you want to use them in monaco-editor-uwp. I think it's better to decouple monaco type bindings from MonacoEditorComponent and publish the type bindings itself as a dedicated package, otherwise you cannot expose a non-selaed class which is really annoying. |
Hey @hez2010 sorry for the delay in getting back to this. Was finally trying to take a stab at it. I did see there were come conflicts with the new type definitions since they changed I was trying to re-generate the typings myself with your updates, but was running into this:
It was still generating a json file, but it was mostly empty, and then the C# files weren't being generated. Any thoughts on what I may be missing? Thanks! |
Also hit an issue with trying to run test app with 0.22.3 on Win 10 19042. Points to this place in ae.replace(/(\p{Ll})(\p{Lu})/gmu,"$1_$2").replace(/([^\b_])(\p{Lu})(\p{Ll})/gmu,"$1_$2$3").toLocaleLowerCase() Tried reverting back to 21.3 instead and that seems to be working great so far. |
I've got this PR integrated into my local copy of my #46 PR along with the updates to bring us up to compatibility with 0.21.3 of Monaco tested out with all the examples in the Sample app. Would be nice to at least fix the type-generation script though so it can be run locally. Feel like there's been updates to TypeScript and typedoc which aren't playing nice with the current script's configuration? |
A tsconfig.json is needed to generate json from TypeScript. Also |
Thanks @hez2010, do you have the one that you've been using locally? It'd be great if we can commit it, so we can just run |
Typedoc introduced a bug (TypeStrong/typedoc#1637) recently which mis-interprets property delegates as method signatures. To workaround, typedoc version should be fixed at 0.20.* (TypeScript 3.9~4.2). I'm working on a PR to make it work again. |
Done. #57 |