fable-compiler / fable-import

Fable bindings for JavaScript libraries
Apache License 2.0
33 stars 32 forks source link

Can I manually correct VSCode bindings? #12

Open fsoikin opened 7 years ago

fsoikin commented 7 years ago

I found this issue with VSCode bindings where window.withProgress has Progress<obj> in place where the original typings have Progress<{ message?: string; percentage?: number }>.

This is quite easy to fix, but I hesitate, because this file looks like it was autogenerated, and if that's the case, it means that my manual fixes will be overwritten by the next autogeneration.

Any thoughts?

alfonsogarciacaro commented 7 years ago

We're still defining the process (I'm currently updating ts2fable). Most of the bindings already have manual editions so next automatic update is going to be a problem anyways we need to solve. I guess you can send a PR (unless @Krzysztof-Cieslak has something to say), or just add the file directly to your project and do manual updates as needed for now.

BTW, I think ts2fable generated Progress<obj> because it doesn't support yet inline interface declarations.

Krzysztof-Cieslak commented 7 years ago

Also, the latest version of bindings I'm using for Ionide are here - https://github.com/ionide/ionide-vscode-helpers/blob/master/Fable.Import.VSCode.fs

I manually update them from time to time... and yes, I should update bindings here.

alfonsogarciacaro commented 7 years ago

Ah, ok. Thanks for the clarification @Krzysztof-Cieslak! So I guess for now it's safe to remove the https://github.com/fable-compiler/fable-vscode repo to avoid confusion.

Also, as you're more than probably the main user/maintainer of the VSCode bindings, I think we should do whatever is most convenient for you. Maybe also deleting VSCode bindings from here, make your repo the official one and make you owner of the new Fable.Import.VSCode Nuget package?

fsoikin commented 7 years ago

Well, the version in ionide-vscode-helpers is not a Nuget package, but just a file that gets included via Paket, and that is necessary, because Fable 0.6 (which is currently used for Ionide) doesn't have good support for Nuget packages.

But I am currently trying to see if I can mode Ionide to Fable 1.1, and in that light, I was actually thinking the other way around: the official version of bindings should be here, and included in Ionide as a Nuget package.

Thoughts?

fsoikin commented 7 years ago

Also, the stuff under Ionide is not strictly "better" - both versions have some things that are absent in the other.

fsoikin commented 7 years ago

The above PR brings in stuff that exists in the Ionide's version, but doesn't yet exist here. As you can see, the are only a few additions. If we were to go the other way, there would be a lot more.

alfonsogarciacaro commented 7 years ago

@fsoikin You're right, moving the bindings to Ionide org may be tricky until Ionide upgrades to Fable 1.1. So let's wait until this happens (@Krzysztof-Cieslak please check with me if you need help with that) and then decide where to place the official bindings according to what's most convenient for Krzys (and other users).

mabasic commented 1 year ago

In regard to:

Can we make this happen?

Lets unlist the current (old) package from Nuget and instead go with ionide version (publish to Nuget) and make a proper version. I can't find out how or where ionide/ionide-vscode-helpers is published. I assumed to npmjs.org but I can't find it there. Also the version is missing?

MangelMaxime commented 1 year ago

I don't have access to the NuGet package so i can't manage it.

@alfonsogarciacaro