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

Tracking : Allow Mac4VS to pick up F# components directly from the F# repo #12824

Closed
11 tasks
KevinRansom opened this issue Mar 9, 2022 · 1 comment
Closed
11 tasks

Comments

@KevinRansom
Copy link
Member

KevinRansom commented Mar 9, 2022

Currently VS4MAC, has a very customized deployment of F#. We should ensure that what we publish is directly ingestible by VS4MAC.

What does done look like:

  1. FSharp on VS4MAC has a compile/interactive and IDE Experience that supports the latest F# 6.0 language features, driven by the latest published FSharp.Compiler Service
  2. FSharp Editor refactored and delivered such that VS4MAC can consume a package delivered from F# OSS repo unchanged
  3. Cost of consumption of future F# language enhancements will be de-minimis. (very cheap)

Not considered:
4. Updating VS FSI functionality to match VS4MAC fsharpi functionality.
5. Updating FSharp repo to tests VS4MAC specific deployments of fsharp editor.
a. It was determined that testing for windows was sufficient to determine the reliability of the editor. VS4MAC would verify the correctness of the underlying infrastructure.
b. Testing would be performed by the Manual Testing team under Richa, verifying F# scenarios on VS4MAC

Things to do:

  1. Refactor the FSharp Editor library
    a. Remove fsharp code-lens to a separate library
    (VS4MAC does not support the necessary codelens APIs).
    b. Remove, rewrite or separate WPF dependencies from FSharp.Editor.
    (VS4MAC does not support WPF APIs – instead has .cocoa as it’s framework).
    c. Simplify FSharp.Editor dependencies
    FSharp.Editor as built, has deep dependencies on Visual Studio, they need stripping and reducing to a small subset.
    d. Break out project system dependencies introduced for VS4Mac into a separate library
    e. Make and deploy a nuget package for the updated FSharp Editor
    f. Modify VS4Windows build to consume FSharp.Editor from a nuget package
    g. Modify VS4MAC build to consume FSharp.Editor from a nuget package
    h. Consume updated FSharp.Editor.dll and deal with bug-tail

  2. Modify VS4MAC FSI feature to build on updated fsharp.compiler.service

  3. Modify VS4MAC to support VS style configuration options for F#

(Estimates)
F# team

  • (1 w) Remove fsharp code-lens feature to a separate library
  • (2 w) Remove or rewrite or separate WPF dependencies.
  • (1 w) Simplify FSharp.Editor dependencies
  • (1 d) Make and deploy a nuget package for the updated FSharp Editor
  • (1 d) Modify VS4Windows build to consume FSharp.Editor from a nuget package

VS4MAC team

  • (1 w) Break out project system dependencies introduced for VS4Mac into a separate library
  • (1 w) Modify VS4MAC build to consume FSharp.Editor from a nuget package
  • (1 w) Consume updated FSharp.Editor.dll and deal with bug-tail
  • (1 w) Modify VS4MAC FSI feature to build on updated fsharp.compiler.service
  • (1 w) Modify VS4MAC to support VS style configuration options for F#
  • (1 w) Identify and update other VS4MAC components dependent on FSharp.Compiler.Service
@Happypig375
Copy link
Member

@Happypig375 Happypig375 closed this as not planned Won't fix, can't repro, duplicate, stale Aug 30, 2023
@github-project-automation github-project-automation bot moved this from Not Planned to Done in F# Compiler and Tooling Aug 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

3 participants