Debug (Build only) | Release (Tests Part 1) | Release (Tests Part 2) | Release (Tests Part 3) | Release (Tests Part 4) | |
---|---|---|---|---|---|
master |
You are invited to join with the F# Community and the Visual F# Tools team to help produce future releases of the F# language compiler, library, and tools.
F# is a mature, open source, cross-platform, functional-first programming language which empowers users and organizations to tackle complex computing problems with simple, maintainable, and robust code. F# is used in a wide range of application areas and is supported by Microsoft and other industry-leading companies providing professional tools, and by an active open community. You can find out more about F# at http://fsharp.org.
Changes contributed here are packaged into the Visual F# Tools, the F# Open Edition, and other open source F# editing tools. Microsoft coordinates packaging this repository as part of the Visual F# Tools, while the F# community coordinates packaging it as the Open Edition of F# for use on Linux, macOS, Android, iOS, and other platforms, via the fsharp/fsharp GitHub repo.
This project is subject to the Apache Licence, Version 2.0. A copy of the license can be found in License.txt at the root of this repo.
See DEVGUIDE.md and TESTGUIDE.md in the root of the repo for details on build, development, and testing.
For F# Compiler on Windows (build net40
)
For F# Compiler on macOS and Linux (see .travis.yml for build steps)
- Mono latest
- If building for .NET Core, then .NET Core will be downloaded from Linux packages
For Visual F# IDE Tools 4.1 development (Windows)
- Visual Studio 2017
- Under the "Windows" workloads, select ".NET desktop development"
- Select "F# language support" under the optional components
- Under the "Other Toolsets" workloads, select "Visual Studio extension development"
- Under the "Individual components" tab select "Windows 10 SDK" as shown below (needed for compiling RC resource, see #2556):
- Under the "Windows" workloads, select ".NET desktop development"
- Git for windows
- .NET 3.5
- .NET 4.5
- .NET 4.5.1
- .NET 4.6
- MSBuild 12.0
- Windows 7 SDK
- Windows 8 SDK
- Windows 8.1 SDK
- Windows 10 SDK
Guidelines for contributions to the F# compiler, library, and Visual F# IDE tools can be found in the CONTRIBUTING.md document.
How we label issues and PRs: https://github.com/dotnet/roslyn/wiki/Labels-used-for-issues
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.
If you would like to contribute to the F# ecosystem more generally see the F# Software Foundation's Community Projects pages.
To setup Visual Studio to use the latest nightly releases of the Visual F# Tools, follow the Using CI Builds instructions.
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.
This repository enables development on Windows, Linux and macOS. It enables automated CI testing primarily on Windows.
If using Android, or iOS, and would like to contribute, please see the instructions provided at the Open Edition repo.
Although the primary focus of this repo is F# for Windows and the Visual Studio F# tools, contributions here flow directly to the F# Open Edition repo. More details can be found here.
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.
Note that while this will remove the dependency on VS 2017, you will still need to have MSBuild and the required targets files installed, which come with any older version of VS (e.g. 2013 or 2015).
Just install the nuget package, it will then use MSBuild and the targets files from the older version. If you get an error, see below.
The currently distributed F# templates depend on machine-wide installed .targets files. You can manually modify your project to instead use the .targets file from the nuget package. This will allow you to build your project on a computer with VS but without the optional F# tools installed. See fsharp/fsharp#676 for how to modify your project file.
Keep up with the Visual F# Team and the development of the Visual F# Tools by following us @VisualFSharp or subscribing to the .NET Blog.