fake-cli 6.1.1

dotnet tool install --global fake-cli --version 6.1.1                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local fake-cli --version 6.1.1                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=fake-cli&version=6.1.1                
nuke :add-package fake-cli --version 6.1.1                

FAKE - F# Make · FAKE Build and Test NuGet Badge PRs Welcome Join the chat at https://gitter.im/fsharp/FAKE

"FAKE - F# Make" is a cross platform build automation system. Due to its integration in F#, all the benefits of the .NET Framework and functional programming can be used, including the extensive class library, powerful debuggers and integrated development environments like Visual Studio or MonoDevelop, which provide syntax highlighting and code completion.

The new DSL was designed to be succinct, typed, declarative, extensible and easy to use.

Here is an example to get a glimpse on FAKE:

// build.fsx

#r "paket:
nuget Fake.Core.Trace
nuget Fake.Core.Target //"
// include Fake modules, see Fake modules section

open Fake.Core

// *** Define Targets ***
Target.create "Clean" (fun _ ->
  Trace.log " --- Cleaning stuff --- "
)

Target.create "Build" (fun _ ->
  Trace.log " --- Building the app --- "
)

Target.create "Deploy" (fun _ ->
  Trace.log " --- Deploying app --- "
)

open Fake.Core.TargetOperators

// *** Define Dependencies ***
"Clean"
  ==> "Build"
  ==> "Deploy"

// *** Start Build ***
Target.runOrDefault "Deploy"

This example pulls Fake's Target and Trace modules and define three targets: Clean, Build, and Deploy. By analogy with a .Net project;

  • the Clean target can be used to clean the project before a build,
  • the Build target to call MSBuild or any build steps that are required for you application,
  • the Deploy target can push your built project to a cloud service.

At the bottom, the example define target dependencies, which specify that a Deploy must run after a Build which must run after a Clean.

See the project home page for tutorials and the API documentation for various FAKE modules.

Requirements

Fake runner requires .Net v6 SDK to be installed on the machine to run it. .Net v6 was chosen since it is the current LTS release of .Net

FAKE 5 doesn't have this requirement. You can use FAKE 5 runner without having .NET 6 SDK installed since it will default to NETSTANDARD2.0 assemblies. But we advice to see the options available to run your build script in Different Ways to run FAKE

Fake modules has target frameworks of net6 and netstandard2.0. Please see this link which lists the supported .Net and .NET Framework versions by netstandard2.0

Installation

  • Either: Download and install the Dotnet SDK and run dotnet tool restore followed by dotnet fake build
  • Or: Install FAKE 5 or later (for example via choco install fake -pre) and run fake build

Note: You can find more details on the contributing page

Make sure to have long path enabled: see how to enable long paths Otherwise the test-suite will fail (However, the compilation should work)

Usage

See detailed instructions on how to use FAKE in the getting started guide.

NuGet Packages

Package Name Nuget
Fake-Cli NuGet Badge
Fake.Core.Target NuGet Badge
Fake.Core.Context NuGet Badge
Legacy FAKE NuGet Badge

Contributing

See the contributing page.

Maintainers

Although this project is hosted in the fsprojects organization, it is not maintained and managed by the F# Core Engineering Group. The F# Core Engineering Group acknowledges that the independent owner and maintainer of this project is Steffen Forkmann.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
6.1.1 1,635 9/1/2024
6.1.0 2,786 8/5/2024
6.0.0 161,392 2/21/2023
6.0.0-beta001 5,634 12/21/2022
6.0.0-alpha004 1,147 11/17/2022
6.0.0-alpha003 321 11/11/2022
6.0.0-alpha002 788 11/1/2022
6.0.0-alpha001 954 11/1/2022
5.23.1 75,063 10/21/2022
5.23.0 64,503 8/1/2022
5.23.0-alpha002 1,107 7/22/2022
5.23.0-alpha001 228 7/15/2022
5.22.0 235,177 2/14/2022
5.21.1 5,731 1/30/2022
5.21.0 7,395 1/24/2022
5.21.0-alpha004 1,791 1/6/2022
5.21.0-alpha003 6,149 11/11/2021
5.21.0-alpha002 202 11/11/2021
5.21.0-alpha001 251 11/10/2021
5.20.4 415,235 3/31/2021
5.20.4-alpha.1658 172 3/30/2021
5.20.4-alpha.1642 56,107 10/23/2020
5.20.3 239,447 8/5/2020
5.20.2 33,306 6/27/2020
5.20.1 16,123 6/13/2020
5.20.1-alpha.1590 246 5/7/2020
5.20.0 55,946 5/5/2020
5.20.0-alpha.1584 223 5/5/2020
5.20.0-alpha.1583 224 5/5/2020
5.20.0-alpha.1580 294 5/4/2020
5.20.0-alpha.1566 263 4/13/2020
5.20.0-alpha.1545 1,123 3/7/2020
5.20.0-alpha.1535 224 3/6/2020
5.19.2-alpha.1526 266 3/5/2020
5.19.1 108,636 2/9/2020
5.19.0 59,424 12/19/2019
5.19.0-alpha.1473 257 12/18/2019
5.19.0-alpha.1439 240 12/16/2019
5.18.3 64,154 11/4/2019
5.18.2 6,438 10/26/2019
5.18.1 3,496 10/22/2019
5.18.0 3,689 10/20/2019
5.17.0 5,429 10/12/2019
5.16.2-alpha.1304 1,997 10/8/2019
5.16.1 80,404 8/25/2019
5.16.0 13,159 8/17/2019
5.16.0-alpha.1228 262 8/17/2019
5.15.4 14,378 7/16/2019
5.15.3 5,454 7/3/2019
5.15.2 1,586 7/3/2019
5.15.1 1,699 7/1/2019
5.15.1-alpha.1104 263 6/21/2019
5.15.0 34,254 6/17/2019
5.14.1 1,849 6/13/2019
5.14.0 1,142 6/12/2019
5.14.0-alpha.1085 274 6/10/2019
5.13.7 11,669 5/12/2019
5.13.5 5,107 5/1/2019
5.13.3 1,074 4/30/2019
5.13.2 2,648 4/23/2019
5.13.1 971 4/22/2019
5.13.0 4,096 4/14/2019
5.13.0-alpha.987 264 4/14/2019
5.13.0-alpha.975 262 4/14/2019
5.12.6 9,611 3/17/2019
5.12.4 7,182 2/27/2019
5.12.1 4,948 2/15/2019
5.12.0 18,738 1/12/2019
5.11.1 8,791 12/6/2018
5.11.0 2,718 12/4/2018
5.10.1 6,279 11/11/2018
5.9.3 8,726 10/15/2018
5.9.2 1,016 10/14/2018
5.9.1 867 10/13/2018
5.9.0 922 10/13/2018
5.8.5 1,450 10/10/2018
5.8.4 1,251 10/8/2018
5.7.2 2,902 9/24/2018
5.7.0 999 9/23/2018
5.6.2-alpha.494 443 9/23/2018
5.6.2-alpha.491 458 9/22/2018
5.6.1 2,977 9/9/2018
5.5.1-alpha.403 501 8/26/2018
5.5.0 5,802 8/26/2018
5.4.1 1,691 8/16/2018
5.4.0 1,289 8/11/2018
5.3.1 2,084 8/5/2018
5.3.0 1,335 7/30/2018
5.2.0 6,184 7/9/2018
5.1.0 8,442 6/17/2018
5.0.0 5,903 6/6/2018
5.0.0-rc018.248 574 6/5/2018
5.0.0-rc018.244 696 6/2/2018

BUGFIX: Assembly resolver to pick a found SDK instead of first SDK, thanks @Thorium - https://github.com/fsprojects/FAKE/pull/2797/files
BUGFIX: Fix issue parsing global.json when using prerelease .NET SDKs, thanks @numpsy - https://github.com/fsprojects/FAKE/issues/2803
BUGFIX: Allow RunSettingsArguments to be set, thanks @TheAngryByrd - https://github.com/fsprojects/FAKE/pull/2771