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

Ionide 5.0 roadmap #1305

Closed
8 tasks done
Krzysztof-Cieslak opened this issue Feb 14, 2020 · 25 comments
Closed
8 tasks done

Ionide 5.0 roadmap #1305

Krzysztof-Cieslak opened this issue Feb 14, 2020 · 25 comments

Comments

@Krzysztof-Cieslak
Copy link
Member

Krzysztof-Cieslak commented Feb 14, 2020

I think it's high time to make the next bunch of "breaking" changes and push Ionide completely to the .Net Core world.

The main changes (and probably more will come in the future) will be:

  • Update to latest Fable (done in Upgrade Fable #1415)
  • Remove net FSAC runtime (and remove net461 build in FSAC repo) (done in Remove net FSAC target #1418)
  • Remove functionality of choosing "MsBuild host" - always use dotnet build (done in Remove MsBuild host #1420)
  • Replace Forge (and deprecate Forge repo)
    • scaffolding has been already moved to dotnet new
    • project references can be handled with dotnet add reference,
    • moving files we should create small utility doing XML manipulation rather than attempting to model MsBuild files [what Forge is trying to do]
  • Use dotnet fsi as default (done in Use dotnet fsi as default #1419)
  • Bump minimal required .Net version to 5.0
  • Enable background service, and reference code lenses by default.
  • Make FSAC responsible for tracking changes in .fsproj and asset files (done in Add change tracking for projects FsAutoComplete#659)
@jbeeko
Copy link
Contributor

jbeeko commented May 23, 2020

This is a great idea and will reduce the amount of "it's not working, why is it not working" queries.

@danpozmanter
Copy link

Following this. Right now Ionide is frequently out of sync - requiring a hard window reload or restart of VSCode to correctly highlight and recognize packages/references. It seems like this work would help solve that synchronization issue?

@poctob
Copy link

poctob commented Jul 13, 2020

Following this. Right now Ionide is frequently out of sync - requiring a hard window reload or restart of VSCode to correctly highlight and recognize packages/references. It seems like this work would help solve that synchronization issue?

So it is not just me #1397

@ovatsus
Copy link

ovatsus commented Aug 19, 2020

After removing the net FSAC runtime will it still be possible to keep using the net fsi isntead of the netcore fsi? I have a lot of existing scripts that won't work on netcore

@Krzysztof-Cieslak
Copy link
Member Author

@ovatsus - yes, it should just like right now if you can run netcore FSAC runtime but doesn't enable Use SDK Scripts (so still use full framework FSI)

@Krzysztof-Cieslak
Copy link
Member Author

Krzysztof-Cieslak commented Sep 20, 2020

Just as info - we've started working on this, you can track changes in 5.0 branch

@ericsampson
Copy link

* Bump minimal required .Net Core version to 3.1

Would this just mean that a .NET Core 3.1 runtime/SDK would be required on the machine, or would it affect working with Core 2.1 projects? The latter would be a bummer, as Core 2.1 is LTS until August 21, 2021.

Cheers!!

@Krzysztof-Cieslak
Copy link
Member Author

@ericsampson, yeah it's just about SDK required on the developer's machine.

@ericsampson
Copy link

Thanks Krzysztof! I'm looking forward to it. Cheers

@Krzysztof-Cieslak
Copy link
Member Author

Krzysztof-Cieslak commented Nov 13, 2020

The first second third preview of Ionide 5.0 is available. You can check release notes and download it here - https://github.com/ionide/ionide-vscode-fsharp/releases/tag/5.0.0-preview03

To test preview:

  1. Make sure you have .NET 5 SDK installed.
  2. Download .vsix file from the release page
  3. Open VSCode
  4. Go to the extension tab
  5. Choose Install from VSIX from the menu

image

All feedback will be appreciated.

@AbrahamAlcaina
Copy link

On Ubuntu it's not working

Console:

[Info  - 5:54:44 PM] Connection to server got closed. Server will restart.
[Info  - 5:54:45 PM] Connection to server got closed. Server will restart.
[Info  - 5:54:45 PM] Connection to server got closed. Server will restart.
[Info  - 5:54:45 PM] Connection to server got closed. Server will restart.
[Error - 5:54:46 PM] Connection to server got closed. Server will not be restarted.

@danpozmanter
Copy link

Seems to be working for me on Linux Mint 20.

@AbrahamAlcaina
Copy link

Did you install with snap?

@AbrahamAlcaina
Copy link

@Krzysztof-Cieslak let me know if you want more info

@baronfel
Copy link
Contributor

Oh there's already a logged and known issue with snaps. They are buggered beyond belief right now in terms of ionide support. I have no idea why MS is pushing them for linux distribution.

@AbrahamAlcaina
Copy link

@baronfel ty I installed though apt-get and it works.
BTW here the steps if someone have the same issue
https://docs.microsoft.com/en-us/dotnet/core/install/linux-debian

@vilinski
Copy link

preview01 on macos feels stabler than the stable one!

@baronfel
Copy link
Contributor

Preview 2 is released! Same install instructions as above (I've updated that comment with the new link) and now you get a bunch of new codefixes too.

@ebresafegaga
Copy link

Everything seems to be fine except for the #r nuget: ... in .fsx files

@vilinski
Copy link

@ebresafegaga can't confirm, works well for me

@matthewcrews
Copy link

matthewcrews commented Nov 30, 2020

The #r "nuget: Flips" command works now. The library uses a native library which is now loading correctly.
System: Windows 10 Enterprise 64-bit

@Krzysztof-Cieslak
Copy link
Member Author

Preview 3 is released. Same install instructions as above (I've updated that comment with the new link) .

It includes even more codefixes by @baronfel and @cartermp, and it includes a new, reworked project system in FSAC - in case of any problems make sure you've cleared project cache (with F#: Clean Cache command) and/or you've removed obj folder and restored packages again.
Since it's a complete rewrite of a project system I expect there may be some issues and bugs in there, so any feedback is appreciated.

@njlr
Copy link

njlr commented Dec 14, 2020

Will this still work with only netcore3.1 installed? I ask because 5.0 is not an LTS release, and therefore is not supported by AWS etc.

@baronfel
Copy link
Contributor

It will not. It now requires. Net 5. It's important to realize that you can still build applications for. Net core 3.1 while using tooling for. Net 5. The two have no connection. We are talking purely about developer time dependencies, and not about runtime dependencies of the code that you write.

@Krzysztof-Cieslak
Copy link
Member Author

5.0 is out. Have fun.

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

No branches or pull requests