2017-04-11

Contributing to Visual F# in 2017

Visual Studio 2017 updates are on a release cadence more similar to VS Code than older versions of Visual Studio. RTM came out last month, Update 1 was just released, Update 2 will be in about a month and Update 3 will be around July. This release cycle is more similar to three projects I love: VS Code, TypeScript, and Rust.

Phillip Carter just outlined what is coming in Update 2 and Update 3 for Visual F#. I am really looking forward to Update 3 which is planned to have .NET Core project, .NET Core 2.0 and .NET Standard 2.0 support. I'm hoping that means we can use Type Providers like FSharp.Data.SqlClient from .NET Core.

The shorter and more open release cycle is something that many of us have been asking for. Your contributions from this month and the next could make it into a release build of Visual Studio in July! I've done a couple of things to help make contributing easier:
  • Scripted installation of all required Visual F# dependencies
  • Scripted installation of Visual F# daily builds

Automate install of Visual F# Dependencies

This is on master as scripts/Add-VisualStudioComponents.ps1. It uses the Visual Studio Setup PowerShell Module to find your installation, then runs the Visual Studio Installer UI with a list of components to install if they are not already. The Installer will tell you how much space and prompt you. You can change a switch to make it quite and not launch the UI.

Loading gist ...

Automate install of Visual F# Daily Builds

I have an open pull request that automates installation of the daily builds. It figures out the latest version available and then downloads and installs it using VSIXInstaller. Sadly, I ran into a bug where it doesn't work when you turn off the UI. I've filed an issue and could use some assistance with that. The hope is that those of us who want to test the daily builds, can do so on build systems like AppVeyor too in an automated fashion.

Available for Hire

At the end of the month, I am headed around the world with Remote Year with my first month in Croatia. Unfortunately, I am unable to take my current job with me. I've been a .NET MVP the last 3 years and I have 20 years of experience building software. You can find me on LinkedIn.