Skip to content

Commit 39caf96

Browse files
authored
Update and simplify README
* Consolidate lots of info * Add a quickstart so folks don't need to open the devguide for basic build/dev * Remove lots of info that isn't about this repository at all
1 parent 768f39c commit 39caf96

File tree

1 file changed

+54
-53
lines changed

1 file changed

+54
-53
lines changed

README.md

Lines changed: 54 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,41 @@
1-
# The F# Language, Library, and Visual F# Tools Repository
1+
# The F# Language, Library, and F# Tools for Visual Studio
22

3-
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.
3+
You are invited to contrinute tp future releases of the F# language compiler, library, and tools. Development of this repository can be done anywhere [.NET Core]() is supported: various Linux distributions, macOS, and Windows.
44

5-
* [About F#](http://fsharp.org)
6-
* [Testimonials](http://fsharp.org/testimonials)
7-
* [Contributing](#contributing)
8-
* [Using](#using)
5+
## About F#
96

10-
The F# Compiler and Tools are also mirrored in [the corresponding repository](http://github.com/fsharp/fsharp) of the F# Software Foundation.
7+
If you're curious about F# itself, check out these links:
118

12-
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](https://fsharp.github.io/2014/06/18/fsharp-contributions.html). Currently, the F# community coordinates packaging [other editions of F#](https://github.com/fsharp/fsharp/) for use on Linux, macOS, Android, iOS, and other platforms, and Microsoft coordinates packaging this repository as part of the Visual F# Tools.
9+
* [What is F#](https://docs.microsoft.com/dotnet/fsharp/what-is-fsharp)
10+
* [Get started with F#](https://docs.microsoft.com/dotnet/fsharp/get-started/)
11+
* [F# Software Foundation](http://fsharp.org)
12+
* [F# Testimonials](http://fsharp.org/testimonials)
1313

14-
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".
14+
## Contributing
15+
16+
### Quickstart on Windows
17+
18+
First, build:
19+
20+
```bash
21+
build.cmd
22+
```
23+
24+
You can then open either `FSharp.sln` or `VisualFSharp.sln` in your editor of choice. The latter solution is larger but includes the F# tools for Visual Studio and its associated infrastructure.
25+
26+
### Quickstart on Linux or macOS
27+
28+
If you're on Linux or macOS:
29+
30+
```bash
31+
sh ./build.sh
32+
```
33+
34+
You can then open `FSharp.sln` in your editor of choice.
1535

36+
### More info
37+
38+
See [DEVGUIDE.md](DEVGUIDE.md) and [TESTGUIDE.md](TESTGUIDE.md) for more details on additional configurations for building and testing, how to update compiler error messages, and more.
1639

1740
## Build Status
1841

@@ -22,24 +45,24 @@ For historical reasons this repository is called "visualfsharp" and currently al
2245
|dev15.9|[![Build Status](https://dnceng.visualstudio.com/_apis/public/build/definitions/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/106/badge?branchname=dev15.9)](https://dnceng.visualstudio.com/public/public%20Team/_build?definitionId=106&_a=history)|
2346
|dev16.0|[![Build Status](https://dnceng.visualstudio.com/_apis/public/build/definitions/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/106/badge?branchname=dev16.0)](https://dnceng.visualstudio.com/public/public%20Team/_build?definitionId=106&_a=history)|
2447

25-
## Help improve the Quality of the Tools by Using the Nightly Releases of Visual F# Tools
26-
To setup Visual Studio to use the latest nightly releases of the Visual F# Tools:
27-
https://blogs.msdn.microsoft.com/dotnet/2017/03/14/announcing-nightly-releases-for-the-visual-f-tools/
48+
## Using nightly releases in Visual Studio
2849

50+
You can use the latest `master` build of the F# compiler and tools for Visual Studio via our nightly releases if you are a Visual Studio users. See details on setup here:
2951

30-
## Contributing
52+
https://blogs.msdn.microsoft.com/dotnet/2017/03/14/announcing-nightly-releases-for-the-visual-f-tools/
3153

32-
See [DEVGUIDE.md](DEVGUIDE.md) and [TESTGUIDE.md](TESTGUIDE.md) for details on build, development, and testing.
54+
### Even more nightly than the nightly
3355

34-
See [CONTRIBUTING.md](CONTRIBUTING.md) for general guidelines on the contribution process, also [how we label issues and PRs](https://github.com/dotnet/roslyn/wiki/Labels-used-for-issues)
56+
Alternatively, if you _really_ want to live on the bleeding edge, you can set up a nightly feed for the Visual Studio preview releases, which use the latest commit in the preview branch of this repository. To do so, follow the same instructions as the above blog post, but instead with these links:
3557

36-
To contribute to the F# ecosystem more generally see the F# Software Foundation's [Community Projects](http://fsharp.org/community/projects/) pages.
58+
* Set your feed to the [preview feed](https://dotnet.myget.org/F/fsharp-preview/vsix)
59+
* Install manually from the [preview feed](https://dotnet.myget.org/feed/fsharp-preview/package/vsix/VisualFSharp)
3760

3861
## Branches
3962

4063
These are the branches in use:
4164

42-
* `master` = Latest branch for OSS developers and nightly users.
65+
* `master`
4366
- Most contributions go here.
4467
- Able to be built, installed and used in the latest public Visual Studio release.
4568
- May contain updated F# features and logic.
@@ -48,61 +71,39 @@ These are the branches in use:
4871
- Gets integrated into https://github.com/fsharp/FSharp.Compiler.Service to form the basis of FSharp.Compiler.Service releases
4972

5073
* `dev15.9`
51-
- Servicing branch for VS 2017 update 15.9. We do not expect to service that release, but if we do, that's where the changes would go.
74+
- Long-term servicing branch for VS 2017 update 15.9.x. We do not expect to service that release, but if we do, that's where the changes will go.
5275

5376
* `dev16.x`
5477
- Latest release branch for the particular point release of Visual Studio.
5578
- Incorporates features and fixes from master up to a particular branch point, then selective cherry-picks.
5679
- May contain new features that depend on new things or fixes in the corresponding forthcoming Visual Studio release.
5780
- Gets integrated back into master once the corresponding Visual Studio release is made.
5881

59-
### Technical Documentation
82+
### F# language and core library evolution
6083

61-
* [The F# Language and Core Library RFC Process](http://fsharp.github.io/2016/09/26/fsharp-rfc-process.html)
84+
Although this repository is where actual F# development occurs, evolution of the F# language and core library follows a process spanning two additional repositories. The process is as follows:
6285

63-
* [The F# Language Specification](http://fsharp.org/specs/language-spec/)
64-
65-
* [The F# Compiler Technical Guide](http://fsharp.github.io/2015/09/29/fsharp-compiler-guide.html)
66-
maintained by contributors to this repository. Please read
67-
and contribute to that guide.
86+
1. Use the [F# language suggestions repo](https://github.com/fsharp/fslang-suggestions/) to search for ideas, vote on ones you like, submit new ideas, and discuss details with the F# community.
87+
2. Ideas that are "approved in principle" are eligible for a new RFC in the [F# language design repo](https://github.com/fsharp/fslang-design). This is where the technical specification and discussion of approved suggestions go.
88+
3. Implementations and testing of an RFC are submitted to this repository.
6889

69-
### License
90+
### Additional documentation
7091

71-
This project is subject to the MIT License. A copy of this license can be found in [License.txt](License.txt) at the root of this repo.
92+
The following links can help you get an overview of some technical aspects of the F# language and compiler:
7293

94+
* [The F# Compiler Technical Guide](http://fsharp.github.io/2015/09/29/fsharp-compiler-guide.html)
95+
* [The F# Language Specification](http://fsharp.org/specs/language-spec/)
7396

74-
## Using
75-
76-
For typical installs of F#, see http://fsharp.org.
77-
78-
### Using Nightly Releases of Visual F# Tools
79-
80-
To setup Visual Studio to use the latest nightly releases of the Visual F# Tools:
81-
82-
https://blogs.msdn.microsoft.com/dotnet/2017/03/14/announcing-nightly-releases-for-the-visual-f-tools/
83-
84-
If you wish to set up a *Preview* nightly atop Visual Studio preview builds, you can either [download a VSIX Manually from here](https://dotnet.myget.org/feed/fsharp-preview/package/vsix/VisualFSharp) or set up a VSIX feed in visual studio from [here](https://dotnet.myget.org/F/fsharp-preview/vsix).
85-
86-
### Using CI Builds
87-
88-
To install F#, see http://fsharp.org.
89-
90-
To download the bits for the latest CI builds see [these instructions](https://github.com/Microsoft/visualfsharp/wiki/Using-CI-Builds). This includes and ZIPs containing the F# compiler and VSIX installers for the Visual F# IDE Tools.
91-
92-
### Using F# on a build server or computer without an F# installation
93-
94-
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.
95-
The actual package is built in https://github.com/fsharp/fsharp.
97+
## License
9698

97-
You will need to adjust the targets reference on your project file to use the targets file from the installed ``FSharp.Compiler.Tools`` package.
98-
See https://github.com/fsharp/fsharp/issues/676 for how to modify your project file.
99+
This project is subject to the MIT License. A copy of this license can be found in [License.txt](License.txt) at the root of this repo.
99100

100101
## Code of Conduct
101102

102103
This project has adopted the code of conduct defined by the [Contributor Covenant](http://contributor-covenant.org/) to clarify expected behavior in our community. This code of conduct has been [adopted by many other projects](http://contributor-covenant.org/adopters/). For more information see the [Code of conduct](https://github.com/Microsoft/visualfsharp/wiki/Code-of-Conduct).
103104

104105
## Get In Touch
105106

106-
Follow [@VisualFSharp](https://twitter.com/VisualFSharp) and [@fsharporg](https://twitter.com/fsharporg) on twitter and subscribe to the [.NET Blog](https://blogs.msdn.microsoft.com/dotnet/).
107-
108107
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/.
108+
109+
Additionally, using the `#fsharp` tag on Twitter with any question can easily help you get pointed to the right person if you have a question.

0 commit comments

Comments
 (0)