Fake.Core.Environment 6.0.0-beta001

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.

Showing the top 20 packages that depend on Fake.Core.Environment.

Packages Downloads
Fake.Core.BuildServer
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
15
Fake.Core.BuildServer
Package Description
15
Fake.Core.Process
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
15
Fake.Core.Process
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
16
Fake.Core.Process
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
17
Fake.Core.Trace
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
15
Fake.Core.Trace
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
16
Fake.Core.Trace
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
17
Fake.Core.Tracing
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
15
Fake.Core.Tracing
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
18
Fake.Tools.Git
FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#.
15

BUGFIX: Error detecting msbuild version on Linux, thanks @yazeedobaid - https://github.com/fsprojects/FAKE/issues/2709 ENHANCEMENT: Add ignoreConflicts parameter to paket push, thanks @gdziadkiewicz - https://github.com/fsprojects/FAKE/pull/2720 ENHANCEMENT: Add GitHub API to create a pull request, thanks @yazeedobaid - https://github.com/fsprojects/FAKE/pull/2724

.NET 6.0

.NET Standard 2.0

Version Downloads Last updated
6.1.3 17 12/09/2024
6.1.2 12 12/11/2024
6.1.1 13 12/15/2024
6.1.0 13 12/11/2024
6.0.0 12 12/24/2024
6.0.0-beta001 11 12/16/2024
6.0.0-alpha004 16 12/24/2024
6.0.0-alpha003 12 12/16/2024
6.0.0-alpha002 11 12/24/2024
6.0.0-alpha001 12 12/09/2024
5.23.1 12 12/11/2024
5.23.0 13 12/23/2024
5.23.0-alpha002 11 12/19/2024
5.23.0-alpha001 14 12/11/2024
5.22.0 13 12/16/2024
5.21.1 12 12/24/2024
5.21.0 12 12/20/2024
5.21.0-alpha004 12 12/15/2024
5.21.0-alpha003 13 12/11/2024
5.21.0-alpha002 12 12/24/2024
5.21.0-alpha001 14 12/08/2024
5.20.4 12 12/11/2024
5.20.4-alpha.1658 14 12/13/2024
5.20.4-alpha.1642 14 12/24/2024
5.20.3 14 12/12/2024
5.20.2 14 12/12/2024
5.20.1 12 12/11/2024
5.20.1-alpha.1590 12 12/11/2024
5.20.0 14 12/23/2024
5.20.0-alpha.1584 12 12/11/2024
5.20.0-alpha.1583 12 12/12/2024
5.20.0-alpha.1580 11 12/12/2024
5.20.0-alpha.1566 14 12/16/2024
5.20.0-alpha.1545 12 12/11/2024
5.20.0-alpha.1535 13 12/11/2024
5.19.2-alpha.1526 13 12/17/2024
5.19.1 12 12/12/2024
5.19.0 12 12/12/2024
5.19.0-alpha.1473 13 12/15/2024
5.19.0-alpha.1439 14 12/13/2024
5.18.3 11 12/20/2024
5.18.2 12 12/11/2024
5.18.1 11 12/15/2024
5.18.0 13 12/12/2024
5.17.0 12 12/15/2024
5.16.2-alpha.1304 12 12/11/2024
5.16.1 13 12/11/2024
5.16.0 15 12/11/2024
5.16.0-alpha.1228 11 12/24/2024
5.15.4 13 12/16/2024
5.15.3 11 12/22/2024
5.15.2 13 12/15/2024
5.15.1 11 12/20/2024
5.15.1-alpha.1104 14 12/12/2024
5.15.0 13 11/28/2024
5.14.1 11 12/09/2024
5.14.0 14 12/11/2024
5.14.0-alpha.1085 11 12/12/2024
5.13.7 12 12/15/2024
5.13.5 12 12/11/2024
5.13.3 14 12/23/2024
5.13.2 14 12/20/2024
5.13.1 11 12/11/2024
5.13.0 14 12/12/2024
5.13.0-alpha.987 12 12/16/2024
5.13.0-alpha.975 13 12/12/2024
5.12.6 13 12/24/2024
5.12.4 11 12/16/2024
5.12.1 12 12/15/2024
5.12.0 12 12/19/2024
5.11.1 11 12/19/2024
5.11.0 11 12/09/2024
5.10.1 12 12/15/2024
5.9.3 14 12/24/2024
5.9.2 12 12/15/2024
5.9.1 11 12/24/2024
5.9.0 16 12/11/2024
5.8.5 15 12/16/2024
5.8.4 13 12/19/2024
5.7.2 12 12/20/2024
5.7.0 15 12/24/2024
5.6.2-alpha.494 14 12/12/2024
5.6.2-alpha.491 14 12/11/2024
5.6.1 12 12/11/2024
5.6.0 13 12/12/2024
5.5.1-alpha.403 12 12/11/2024
5.5.0 14 12/12/2024
5.4.1 13 12/11/2024
5.4.0 11 12/19/2024
5.3.1 12 12/16/2024
5.3.0 11 12/24/2024
5.2.0 13 12/12/2024
5.1.0 12 12/16/2024
5.0.0 13 12/09/2024
5.0.0-rc018.248 12 12/20/2024
5.0.0-rc018.244 12 12/23/2024
5.0.0-rc017.237 12 12/19/2024
5.0.0-rc016.225 14 12/16/2024
5.0.0-rc015.196 12 12/13/2024
5.0.0-rc014.167 11 12/15/2024
5.0.0-rc013.141 11 12/19/2024
5.0.0-rc012.95 12 12/20/2024
5.0.0-rc011 12 12/11/2024
5.0.0-rc010 11 12/12/2024
5.0.0-rc009 12 12/19/2024
5.0.0-rc008 11 12/11/2024
5.0.0-rc007 13 12/11/2024
5.0.0-rc006 15 12/20/2024
5.0.0-rc005 12 12/11/2024
5.0.0-rc004 11 12/15/2024
5.0.0-rc002 13 12/13/2024
5.0.0-rc001 11 12/23/2024
5.0.0-beta029 16 12/18/2024
5.0.0-beta028 11 12/11/2024
5.0.0-beta027 13 12/12/2024
5.0.0-beta026 12 12/18/2024
5.0.0-beta025 12 12/11/2024
5.0.0-beta024 12 12/08/2024
5.0.0-beta023 12 12/11/2024
5.0.0-beta022 12 12/11/2024
5.0.0-beta021 12 12/16/2024
5.0.0-beta020 13 12/12/2024
5.0.0-beta019 13 12/12/2024
5.0.0-beta018 11 12/08/2024
5.0.0-beta017 14 12/11/2024
5.0.0-beta016 13 12/15/2024
5.0.0-beta015 13 12/08/2024
5.0.0-beta014 13 12/08/2024
5.0.0-beta013 14 12/08/2024
5.0.0-beta012 12 12/13/2024
5.0.0-beta011 12 12/08/2024
5.0.0-beta010 14 12/17/2024
5.0.0-beta009 12 12/09/2024
5.0.0-beta008 9 12/18/2024
5.0.0-beta007 13 12/08/2024
5.0.0-beta006 10 12/16/2024
5.0.0-beta005 11 12/18/2024
5.0.0-beta004 13 12/15/2024
5.0.0-beta003 11 12/11/2024
5.0.0-beta002 10 12/08/2024
5.0.0-beta001 12 12/11/2024
5.0.0-alpha018 14 12/17/2024
5.0.0-alpha017 14 12/11/2024
5.0.0-alpha016 15 12/11/2024
5.0.0-alpha015 14 12/12/2024
5.0.0-alpha014 13 12/11/2024
5.0.0-alpha013 13 12/11/2024
5.0.0-alpha012 14 12/11/2024
5.0.0-alpha011 14 12/11/2024
5.0.0-alpha010 14 12/15/2024
5.0.0-alpha009 11 12/15/2024