close
The Wayback Machine - https://web.archive.org/web/20190402222842/https://github.com/Microsoft/visualfsharp
Skip to content
The F# compiler, FSharp.Core library, and tools for F#
Branch: master
Clone or download
brettfo publish nightly package as ADO artifact (#6418)
This makes it much easier to install one-off builds for testing.
Latest commit 483337d Apr 2, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Image .nuget
Image .vscode Port build.cmd to build.sh (#2497) Feb 28, 2017
Image benchmarks Suggested namespace rename (#6248) Feb 20, 2019
Image eng
Image fcs
Image mono
Image scripts
Image setup
Image src
Image tests
Image vsintegration
Image .gitattributes
Image .gitignore
Image .vsts-pr.yaml
Image .vsts-signed.yaml publish nightly package as ADO artifact (#6418) Apr 2, 2019
Image Build.cmd consume dotnet arcade sdk Mar 21, 2019
Image CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Sep 16, 2017
Image CONTRIBUTING.md Remove a duplicated sentence (#5320) Jul 10, 2018
Image CoordinateXlif.targets
Image DEVGUIDE.md Update vsix links Mar 22, 2019
Image Directory.Build.props consume dotnet arcade sdk Mar 21, 2019
Image Directory.Build.targets
Image FSharp.Profiles.props
Image FSharp.sln
Image FSharpBuild.Directory.Build.props
Image FSharpBuild.Directory.Build.targets Re-enable ngen for desktop compiler builds (#6386) Mar 28, 2019
Image FSharpTests.Directory.Build.props consume dotnet arcade sdk Mar 21, 2019
Image FSharpTests.Directory.Build.targets
Image ISSUE_TEMPLATE.md Suggest to attach a zip in issue template (#3478) Aug 21, 2017
Image License.txt Adopt the MIT License (#3517) Aug 31, 2017
Image Makefile
Image NuGet.config
Image README.md
Image Restore.cmd
Image RoslynPackageVersion.txt convert to SDK projects Dec 3, 2018
Image TESTGUIDE.md
Image Test.cmd
Image VisualFSharp.sln build FSharp.Core package with appropriate version number (#6368) Mar 22, 2019
Image attributions.md
Image build.sh consume dotnet arcade sdk Mar 21, 2019
Image global.json
Image proto.proj
Image release-notes.md
Image restore.sh
Image test.sh

README.md

The F# Language, Library, and Visual F# Tools Repository

You are invited to help produce future releases of the F# language compiler, library, and tools. This repository enables development on Linux, macOS and Windows, along with some automated CI testing for these.

The F# Compiler and Tools are also mirrored in the corresponding repository of the F# Software Foundation.

Changes contributed here are eventually propagated to this repository and are included in all packagings of F# and open source F# editing tools. The process for doing this is explained in this guide by the F# Core Engineering Group. Currently, the F# community coordinates packaging other editions of F# for use on Linux, macOS, Android, iOS, and other platforms, and Microsoft coordinates packaging this repository as part of the Visual F# Tools.

For historical reasons this repository is called "visualfsharp" and currently also contains the Visual F# IDE Tools. The eventual plan is to split these repositories into "fsharp" and "visualfsharp".

Build Status

Branch Status
master Build Status
dev15.9 Build Status
dev16.0 Build Status

Help improve the Quality of the Tools by Using the Nightly Releases of Visual F# Tools

To setup Visual Studio to use the latest nightly releases of the Visual F# Tools: https://blogs.msdn.microsoft.com/dotnet/2017/03/14/announcing-nightly-releases-for-the-visual-f-tools/

Contributing

See DEVGUIDE.md and TESTGUIDE.md for details on build, development, and testing.

See CONTRIBUTING.md for general guidelines on the contribution process, also how we label issues and PRs

To contribute to the F# ecosystem more generally see the F# Software Foundation's Community Projects pages.

Branches

These are the branches in use:

  • master = Latest branch for OSS developers and nightly users.

    • Most contributions go here.
    • Able to be built, installed and used in the latest public Visual Studio release.
    • May contain updated F# features and logic.
    • Used to build nightly VSIX (see above).
    • Gets integrated into https://github.com/fsharp/fsharp to form the basis of Mono releases
    • Gets integrated into https://github.com/fsharp/FSharp.Compiler.Service to form the basis of FSharp.Compiler.Service releases
  • dev15.x

    • Latest release branch for the particular point release of Visual Studio.
    • Incorporates features and fixes from master up to a particular branch point, then selective cherry-picks.
    • May contain new features that depend on new things or fixes in the corresponding Visual Studio release.
    • Gets integrated back into master once the corresponding Visual Studio release is made.
    • Used to build Visual F# Tool updates

Technical Documentation

License

This project is subject to the MIT License. A copy of this license can be found in License.txt at the root of this repo.

Using

For typical installs of F#, see http://fsharp.org.

Using Nightly Releases of Visual F# Tools

To setup Visual Studio to use the latest nightly releases of the Visual F# Tools:

https://blogs.msdn.microsoft.com/dotnet/2017/03/14/announcing-nightly-releases-for-the-visual-f-tools/

If you wish to set up a Preview nightly atop Visual Studio preview builds, you can either download a VSIX Manually from here or set up a VSIX feed in visual studio from here.

Using CI Builds

To install F#, see http://fsharp.org.

To download the bits for the latest CI builds see these instructions. This includes and ZIPs containing the F# compiler and VSIX installers for the Visual F# IDE Tools.

Using F# on a build server or computer without an F# installation

If you wish to use the latest F# compiler on a computer without Visual Studio 2017 installed, you can add the nuget package FSharp.Compiler.Tools to your projects. This will replace the in-box compiler with the version contained in the package. The actual package is built in https://github.com/fsharp/fsharp.

You will need to adjust the targets reference on your project file to use the targets file from the installed FSharp.Compiler.Tools package. See https://github.com/fsharp/fsharp/issues/676 for how to modify your project file.

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. This code of conduct has been adopted by many other projects. For more information see the Code of conduct.

Get In Touch

Follow @VisualFSharp and @fsharporg on twitter and subscribe to the .NET Blog.

Members of the F# Software Foundation can be invited to the "F# Software Foundation" discussion rooms on slack. More details at http://fsharp.org/guides/slack/.

You can’t perform that action at this time.