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

Port sync-fcs-repo and copy-fcs-repo to the new build system #3531

Open
MangelMaxime opened this issue Sep 18, 2023 · 1 comment
Open

Port sync-fcs-repo and copy-fcs-repo to the new build system #3531

MangelMaxime opened this issue Sep 18, 2023 · 1 comment

Comments

@MangelMaxime
Copy link
Member

Description

Hello @ncave, sync-fcs-repo target seems to be broken to me.

Our build.fsx si trying to update a build.fsx file from the FCS repo which doesn't seems to exist. And even, when trying to run commands manually, it seems like I am missing steps or not running from the correct directory if I follow what our build.fsx tell me.

What are the steps to build the service_slim and the Fable metadata packages?

What is the usage of service_slim?

@ncave
Copy link
Collaborator

ncave commented Oct 2, 2023

@MangelMaxime I don't think they're broken, but they may be expecting you to have this dotnet/fsharp fork repo locally, in a specific folder. There are quite a few branches in there, but most of them are only kept for historic reasons. You can just go to the PR page, the important ones are listed as long-term open PRs for reference:

  • fable (see PR #1) - Modified FCS version that can be compiled with Fable (for REPL use, etc.).
  • service_slim (see PR #2) - The FCS version that Fable tool uses. Stock FCS, with a light facade on top.
  • export (see PR #3) - a slightly modified FCS version used to produce .NET metadata (for REPL).

There are instructions how to build each one of those, in the PRs.

Technically, you only need to run sync-fcs-repo when there is something new in those branches. At the moment, they have already been synched with Fable. These branches are usually rebased from the upstream FCS (dotnet/fsharp) from time to time, usually whenever there is some major F# lang revision.

I plan on updating those branches close to the .NET 8.0 release, and I'll sync them with Fable after.
The service_slim and export branches are relatively easy to rebase to the latest F# version, where fable is usually a bit more involving.

It all depends on how much churn there was in dotnet/fsharp in the mean time, sometimes there is a lot.

If that's unclear or you have other questions, please feel free to ask.

And lest I forget, thanks for picking up the torch and making new releases!

@MangelMaxime MangelMaxime changed the title sync-fcs-repo and copy-fcs-repo broken Port sync-fcs-repo and copy-fcs-repo to the new build system Nov 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants