-
Notifications
You must be signed in to change notification settings - Fork 789
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
Remove type provider security dialog and use custom icon for type provider assembly reference #448
Conversation
Cross-posting from #378, my 2¢ is to somehow base the icon off of the F# logos. My initial preference would be to just globally use the blue logo, but it might look better to use the blue logo with Visual Studio's light and blue themes, but to use one of the dark logos with the dark theme. All three for comparison (the empty space below is the light logo, and is basically white; preview it over something dark): |
@ReedCopsey as an official fsharp.org spokesperson, can you please comment on possible license issues? |
16x16 is really small, with fsharp logo ( resized from http://fsharp.org/favicon.ico ) is like and i dont see dark/light themed icons in current codebase, maybe is easier to start with only one ihmo the fsharp logo is not the best solution, the logo = fsharp language, not a type provider. |
added the placeholder, download e53ce24 to design and test the icon inside visualstudio the placeholder is last spot in imagelist, and the icon is applied to all assemblies, so any project is ok |
Just to set expectations. Whilst I think it's interesting to scout ideas, and to produce prototypes, Icons are part of branding and VS branding is not owned by the feature team (us), so the outcome of this effort will likely serve as input to what the VS branding team does. Thanks Kevin |
+1 to @KevinRansom, we can't just come up with an icon of our choosing. Lots of legal, globalization, and marketing factors to consider. It needs to come from our dedicated art/branding people, or at least re-use an already-approved icon used elsewhere in VS. |
Since we all want to get it in asap we should consider to just change the color of the existing icon in order to formally fulfill the requirement of different icon. The beautification process can be done separately. |
e53ce24
to
678b2a3
Compare
waah, these commit are for master branch not fsharp4 😢 i'll fix this tomorrow Now the assembly reference icon is changed ( using old logic ) only after a build. I removed pretty much all code/resources, splitted in multiple commit for easier diff i tried to remove the type providers option page ( Options -> Tools -> Visual F# -> Type Providers ), removing
but no luck, the menu is always there, only contains an error message about page creation. |
the refresh is after build
…PartiallyCanonicalized
…WeChecked this global variable was used to save the last parsed file, to find current project. That doesn't work because if the file is a .fsx script, a standalone project is used instead of .fsproj
…rSecurityDialogBlockingUI
removed all unused code, updated comment and cleanup. tools option pagei removed the tools options page code but the page continue to exists because the VF# extension ( not the EnableOpenSource extension ) add the registry entry update assembly icon strategynow the icon is updated after a build, but not if the project is already up-to-date (for example after reopening of a solution). a new build update the icon, so np. maybe we can remove the old flow or improve it. The flow is:
but i need an hint /cc @dsyme @latkin @KevinRansom |
I'm working on getting this merged. It will be nice to say goodbye to the TP security dialog 👋 |
Worked through this today and came to the following:
So I propose we scope this PR down to simply "removing the dialog," ignoring the "mark a reference node as containing TPs" feature for now. That's low-risk and achieves the primary goal of ditching the dialog. I'll see what I can do to make the marking feature more robust, and open a separate PR for that.
|
If Right now, adding a reference triggers the |
thx @latkin! i think the old code should be axed completly, is a global hack, and need lot of work for know in what projects the assembly is. |
@@ -444,7 +444,6 @@ let testFlag tcConfigB = | |||
// not shown in fsc.exe help, no warning on use, motiviation is for use from VS | |||
let vsSpecificFlags (tcConfigB: TcConfigBuilder) = | |||
[ CompilerOption("vserrors", tagNone, OptionUnit (fun () -> tcConfigB.errorStyle <- ErrorStyle.VSErrors), None, None); | |||
CompilerOption("validate-type-providers", tagNone, OptionUnit (fun () -> tcConfigB.validateTypeProviders <- true), None, None); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do wonder if this flag should be left in and ignored.
In theory the next version of the Visual F# fsc.exe compiler will only be used with the corresponding Visual F# Tools and FSharp.Build.dll. But perhaps somehow the compiler will be invoked via the old tools, or an open source version of the tools, or some other tool that has copied out the command-line settings from the Visual F# Tools invocations of fsc.exe (which includes this flag). Perhaps just ignoring the option would be better.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 set as deprecated and noop. Because is a minor version (oob), no breaking changes
so if someone use it, get the warning but no error (build failed)
Next version (master?), cleanup and remove all deprecated commands?
I can do it, /cc @latkin
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@dsyme yes I thought about that a bit, but dismissed it as it would need to be some kind of unsupported IDE setup... but I agree it's cheap and simple to keep it with a no-op so that we never have to worry. Anyone is welcome to send that in a PR.
ref #378
I was hasty about icon design, sry.
This is a pr to enable a custom icon based of assembly type (normal or type provider), but the custom icon will come from the VS branding team.
by @KevinRansom (see below)