Skip to content

Commit

Permalink
Merge pull request #1 from Microsoft/master
Browse files Browse the repository at this point in the history
Merge branch 'master'
  • Loading branch information
AviAvni committed Apr 26, 2016
2 parents 2ffb0b6 + 8a2e393 commit da4ead5
Show file tree
Hide file tree
Showing 543 changed files with 21,674 additions and 16,102 deletions.
6 changes: 4 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,8 @@ src/fsharp/FSharp.Compiler/*.userprefs
src/*.log
Debug
Release
vsdebug
vsrelease
Proto
sign_temp
.libs
Makefile
configure
Expand Down Expand Up @@ -73,6 +72,7 @@ src/fsharp/FSharp.LanguageService.Compiler/pplex.fs
src/fsharp/FSharp.LanguageService.Compiler/pppars.fs
src/fsharp/FSharp.LanguageService.Compiler/pppars.fsi
vsintegration/src/unittests/Unittests.fsi
vsintegration/src/FSharp.ProjectSystem.FSharp/ctofiles/MenusAndCommands.cto
tests/*FSharp_Failures.env
tests/*FSharp_Failures.lst
tests/fsharpqa/Source/CodeGen/EmittedIL/StaticInit/StaticInit_Module01.dll
Expand All @@ -94,4 +94,6 @@ tests/fsharpqa/Source/*FSharpQA_Failures.lst
*.orig
*.mdf
*.ldf
*.cto
tests/**/FSharp.Core.dll
project.lock.json
11 changes: 8 additions & 3 deletions .nuget/NuGet.Config
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,14 @@
<add key="disableSourceControlIntegration" value="true" />
</solution>
<packageSources>
<add key="myget.org dotnet-corefx" value="https://www.myget.org/F/dotnet-corefx/" />
<add key="myget.org dotnet-buildtools" value="https://www.myget.org/F/dotnet-buildtools/" />
<add key="myget.org fsharp-daily" value="https://www.myget.org/F/fsharp-daily/" />

<!--To inherit the global NuGet package sources remove the <clear/> line below -->
<clear />
<add key="myget.org fsharp-daily" value="https://www.myget.org/F/fsharp-daily/api/v3/index.json" />
<add key="dotnet-core" value="https://dotnet.myget.org/F/dotnet-core/api/v3/index.json" />
<add key="myget.org dotnet-buildtools" value="https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json" />
<add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" />
<add key="nuget.org" value="https://www.nuget.org/api/v2/" />

</packageSources>
</configuration>
Binary file modified .nuget/NuGet.exe
Binary file not shown.
1 change: 1 addition & 0 deletions BuildToolsVersion.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.0.25-prerelease-00317-01
46 changes: 27 additions & 19 deletions DEVGUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,6 @@ For **Debug** this corresponds to these steps, which you can run individually fo

msbuild src/fsharp-library-build.proj
msbuild src/fsharp-compiler-build.proj
msbuild src/fsharp-typeproviders-build.proj
msbuild src/fsharp-compiler-unittests-build.proj
msbuild src/fsharp-library-build.proj /p:TargetFramework=portable47
msbuild src/fsharp-library-build.proj /p:TargetFramework=portable7
Expand All @@ -102,8 +101,12 @@ For **Debug** this corresponds to these steps, which you can run individually fo
msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable7
msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable78
msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable259
msbuild VisualFSharp.sln
msbuild vsintegration\fsharp-vsintegration-unittests-build.proj
msbuild vsintegration/fsharp-vsintegration-src-build.proj
msbuild vsintegration/fsharp-vsintegration-project-templates-build.proj
msbuild vsintegration/fsharp-vsintegration-item-templates-build.proj
msbuild vsintegration/fsharp-vsintegration-deployment-build.proj
msbuild vsintegration/fsharp-vsintegration-unittests-build.proj
msbuild tests/fsharp/FSharp.Tests.fsproj
src\update.cmd debug -ngen
tests\BuildTestTools.cmd debug

Expand All @@ -112,7 +115,6 @@ For **Release** this corresponds to these steps, which you can run individually

msbuild src/fsharp-library-build.proj /p:Configuration=Release
msbuild src/fsharp-compiler-build.proj /p:Configuration=Release
msbuild src/fsharp-typeproviders-build.proj /p:Configuration=Release
msbuild src/fsharp-compiler-unittests-build.proj /p:Configuration=Release
msbuild src/fsharp-library-build.proj /p:TargetFramework=portable47 /p:Configuration=Release
msbuild src/fsharp-library-build.proj /p:TargetFramework=portable7 /p:Configuration=Release
Expand All @@ -123,44 +125,50 @@ For **Release** this corresponds to these steps, which you can run individually
msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable7 /p:Configuration=Release
msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable78 /p:Configuration=Release
msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable259 /p:Configuration=Release
msbuild VisualFSharp.sln /p:Configuration=Release
msbuild vsintegration\fsharp-vsintegration-unittests-build.proj /p:Configuration=Release
msbuild vsintegration/fsharp-vsintegration-src-build.proj /p:Configuration=Release
msbuild vsintegration/fsharp-vsintegration-project-templates-build.proj /p:Configuration=Release
msbuild vsintegration/fsharp-vsintegration-item-templates-build.proj /p:Configuration=Release
msbuild vsintegration/fsharp-vsintegration-deployment-build.proj /p:Configuration=Release
msbuild vsintegration/fsharp-vsintegration-unittests-build.proj /p:Configuration=Release
msbuild tests/fsharp/FSharp.Tests.fsproj /p:Configuration=Release
src\update.cmd release -ngen
tests\BuildTestTools.cmd release

### 4. [Optional] Install the Visual F# IDE Tools and Clobber the F# SDK on the machine
### 4. [Optional] Install the Visual F# IDE Tools

**Note:** Step #2 below will install a VSIX extension into Visual Studio 2015 that changes the Visual F# IDE Tools
**Note:** This step will install a VSIX extension into Visual Studio 2015 that changes the Visual F# IDE Tools
components installed into Visual Studio 2015. You can revert this step by disabling or uninstalling the addin.

**Note:** Step #3 below will clobber the machine-wide installed F# SDK on your machine. This replaces the ``fsi.exe``/``fsiAnyCpu.exe`` used
by Visual F# Interactive and the ``fsc.exe`` used by ``Microsoft.FSharp.targets``. Repairing Visual Studio 2015 is currently the
only way to revert this step.

**Note:** After you complete the install, the FSharp.Core referenced by your projects will not be updated. If you want to make
a project that references your updated FSharp.Core, you must explicitly change the ``TargetFSharpCoreVersion`` in the .fsproj
file to ``4.4.0.5099`` (or a corresponding portable version number with suffix ``5099``).

For **Debug**:

1. Ensure that the VSIX package is uninstalled. In VS, select Tools/Extensions and Updates and if the package `VisualStudio.FSharp.EnableOpenSource` is installed, select Uninstall
1. Run ``debug\net40\bin\EnableOpenSource.vsix``
1. Run ``vsintegration\update-vsintegration.cmd debug`` (clobbers the installed F# SDK)

For **Release**:

1. Ensure that the VSIX package is uninstalled. In VS, select Tools/Extensions and Updates and if the package `VisualStudio.FSharp.EnableOpenSource` is installed, select Uninstall
1. Run ``release\net40\bin\EnableOpenSource.vsix``
1. Run ``vsintegration\update-vsintegration.cmd release`` (clobbers the installed F# SDK)

Restart Visual Studio, it should now be running your freshly-built Visual F# IDE Tools with updated F# Interactive.

### 5. [Optional] Clobber the F# SDK on the machine

**Note:** Step #3 below will clobber the machine-wide installed F# SDK on your machine. This replaces the ``fsi.exe``/``fsiAnyCpu.exe`` used by Visual F# Interactive and the ``fsc.exe`` used by ``Microsoft.FSharp.targets``. Repairing Visual Studio 2015 is currently the only way to revert this step.

For **Debug**:

1. Run ``vsintegration\update-vsintegration.cmd debug`` (clobbers the installed F# SDK)

For **Release**:

1. Run ``vsintegration\update-vsintegration.cmd release`` (clobbers the installed F# SDK)


### Notes on the build

1. The `update.cmd` script adds required strong name validation skips, and NGens the compiler and libraries. This requires admin privileges.
1. The compiler binaries produced are "private" and strong-named signed with a test key.
1. Some additional tools are required to build the compiler, notably `fslex.exe`, `fsyacc.exe`, `FSharp.PowerPack.Build.Tasks.dll` and the other tools found in the `lkg` directory.
1. Some additional tools are required to build the compiler, notably `fslex.exe`, `fsyacc.exe`, `FSharp.PowerPack.Build.Tasks.dll`, `FsSrGen.exe`, `FSharp.SRGen.Build.Tasks.dll`, and the other tools found in the `lkg` directory.
1. The overall bootstrapping process executes as follows
- We first need an existing F# compiler. We use the one in the `lkg` directory. Let's assume this compiler has an `FSharp.Core.dll` with version X.
- We use this compiler to compile the source in this distribution, to produce a "proto" compiler, dropped to the `proto` directory. When run, this compiler still relies on `FSharp.Core.dll` with version X.
Expand Down
1 change: 1 addition & 0 deletions DotnetCLIVersion.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.0.0-beta-002173
37 changes: 37 additions & 0 deletions ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@


Please provide a succinct description of the issue.

#### Repro steps

Provide the steps required to reproduce the problem

1. Step A

2. Step B

#### Expected behavior

Provide a description of the expected behaviour.

#### Actual behavior

Provide a description of the actual behaviour observed.

#### Known workarounds

Provide a description of any known workarounds.

#### Related information

Provide any related information

* Operating system
* Branch
* .NET Runtime, CoreCLR or Mono Version
* Editing Tools (e.g. Visual Studio Version)
* Links to F# RFCs or entries on http://fslang.uservoice.com
* Links to performance testing scripts
* Indications of severity


20 changes: 11 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,14 @@ Quickstart guides for build and test can be found [here](https://github.com/Micr

###Required Tools for Windows Development and Testing

###Development tools
####Development tools

For F# 3.1.X development

- [Visual Studio 2013](http://www.visualstudio.com/en-us/downloads) + latest updates (or the free [Visual Studio Community Edition](http://www.visualstudio.com/products/visual-studio-community-vs))
- [Visual Studio 2013 SDK](https://www.microsoft.com/en-us/download/details.aspx?id=40758)

For F# 4.0 development
For F# 4.0+ development

- [Visual Studio 2015](http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs)
- [Visual Studio 2015 SDK](http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs)

###Additional frameworks
####Additional frameworks

- [Git for windows](http://msysgit.github.io/)
- [Perl](http://www.perl.org/get.html#win32) (ActiveState 5.16.3 is known to be supported)
Expand All @@ -60,7 +55,7 @@ For F# 4.0 development
- [Windows 8 SDK](http://msdn.microsoft.com/en-us/windows/desktop/hh852363.aspx)
- [Windows 8.1 SDK](http://msdn.microsoft.com/en-us/library/windows/desktop/bg162891.aspx)

###Contributing
####Contributing

Guidelines for contributions to the Visual F# compiler, library, and tools can be found [here](CONTRIBUTING.md).

Expand All @@ -71,6 +66,12 @@ This project has adopted the code of conduct defined by the [Contributor Covenan

If you would like to contribute to the F# ecosystem more generally see the F# Software Foundation's [Community Projects](http://fsharp.org/community/projects/) pages.

###Using CI Builds

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

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.

###Code Flow to Other Platforms

Currently, this repository only enables development and testing on the Windows platform. If you are using Linux, OSX, Android, or iOS, and would like to contribute, please see the instructions provided at the [Open Edition repo](https://github.com/fsharp/fsharp/#the-open-edition-of-the-f-compiler-core-library--tools).
Expand All @@ -81,3 +82,4 @@ Although the primary focus of this repo is F# for Windows and the Visual Studio

Keep up with the Visual F# Team and the development of the Visual F# Tools by following us [@VisualFSharp](https://twitter.com/VisualFSharp) or subscribing to our [team blog](http://blogs.msdn.com/b/fsharpteam/).


Loading

0 comments on commit da4ead5

Please sign in to comment.