EasyBuild.Tools 4.0.0

dotnet add package EasyBuild.Tools --version 4.0.0                
NuGet\Install-Package EasyBuild.Tools -Version 4.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EasyBuild.Tools" Version="4.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EasyBuild.Tools --version 4.0.0                
#r "nuget: EasyBuild.Tools, 4.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EasyBuild.Tools as a Cake Addin
#addin nuget:?package=EasyBuild.Tools&version=4.0.0

// Install EasyBuild.Tools as a Cake Tool
#tool nuget:?package=EasyBuild.Tools&version=4.0.0                

EasyBuild.Tools

NuGet

Sponsors badge link

Tool for generating changelog based on Git history based on Conventional Commits. It is using EasyBuild.CommitParser to parse commit messages check their documentation for more information about configuration.

Contents

Installation

dotnet add package EasyBuild.Tools

APIs

Changelog

<details> <summary> <code>Changelog.tryFindLastVersion</code>

  • Try to find the last version in a changelog file </summary>

<a id='snippet-Changelog.tryFindLastVersion'></a>

(changelogFile: FileInfo)

<sup><a href='/src/Changelog.fs#L17-L19' title='Snippet source file'>snippet source</a> | <a href='#snippet-Changelog.tryFindLastVersion' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Changelog.findLastVersion</code>

  • Find the last version in a changelog file or throw an error if not found </summary>

<a id='snippet-Changelog.findLastVersion'></a>

(changelogFile: FileInfo)

<sup><a href='/src/Changelog.fs#L44-L46' title='Snippet source file'>snippet source</a> | <a href='#snippet-Changelog.findLastVersion' title='Start of snippet'>anchor</a></sup>

</details>

ChangelogGen

<details> <summary> <code>ChangelogGen.run</code>

  • generate changelog using <a href="https://github.com/easybuild-org/EasyBuild.ChangelogGen">EasyBuild.ChangelogGen</a> </summary>

<a id='snippet-ChangelogGen.run'></a>

(
    changelogFile: string,
    ?allowDirty: bool,
    ?allowBranch: string list,
    ?tagFilter: string list,
    ?preRelease: string,
    ?config: string,
    ?forceVersion: string,
    ?skipInvalidCommit: bool,
    ?dryRun: bool,
    ?githubRepo: string,
    ?workingDirectory: string,
    ?forwardArguments: string list
)
: string

<sup><a href='/src/ChangelogGen.fs#L15-L31' title='Snippet source file'>snippet source</a> | <a href='#snippet-ChangelogGen.run' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.ChangelogGen

let newVersion = ChangelogGen.run "CHANGELOG.md"

</details>

<details> <summary> <code>ChangelogGen.tryRun</code>

  • generate changelog using <a href="https://github.com/easybuild-org/EasyBuild.ChangelogGen">EasyBuild.ChangelogGen</a> </summary>

<a id='snippet-ChangelogGen.tryRun'></a>

(
    changelogFile: string,
    ?allowDirty: bool,
    ?allowBranch: string list,
    ?tagFilter: string list,
    ?preRelease: string,
    ?config: string,
    ?forceVersion: string,
    ?skipInvalidCommit: bool,
    ?dryRun: bool,
    ?githubRepo: string,
    ?workingDirectory: string,
    ?forwardArguments: string list
)
: ChangelogGenResult

<sup><a href='/src/ChangelogGen.fs#L58-L74' title='Snippet source file'>snippet source</a> | <a href='#snippet-ChangelogGen.tryRun' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.ChangelogGen

match ChangelogGen.tryRun "CHANGELOG.md" with
| ChangelogGenResult.NoVersionBump ->
    printfn "Nothing to deploy"
| ChangelogGenResult.Error error ->
    failwithf "Error while generating changelog:\n%s" error
| ChangelogGenResult.NewVersion newVersion ->
    // Continue release process

</details>

DotNet

<details> <summary> <code>DotNet.pack</code>

  • create a NuGet package </summary>

<a id='snippet-DotNet.pack'></a>

(?workingDirectory: string, ?configuration: Configuration)
: FileInfo

<sup><a href='/src/DotNet.fs#L17-L20' title='Snippet source file'>snippet source</a> | <a href='#snippet-DotNet.pack' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.DotNet

let nupkgFile = DotNet.pack()

</details>

<details> <summary> <code>DotNet.nugetPush</code>

  • push a NuGet package to a NuGet server </summary>

<a id='snippet-DotNet.nugetPush'></a>

(
    nupkgPath: FileInfo,
    ?forceEnglishOutput: bool,
    ?source: string,
    ?symbolSource: string,
    ?timeout: int,
    ?apiKey: string,
    ?symbolApiKey: string,
    ?disableBuffering: bool,
    ?noSymbols: bool,
    ?interactive: bool,
    ?skipDuplicate: bool,
    ?forceEcho: bool
)

<sup><a href='/src/DotNet.fs#L53-L68' title='Snippet source file'>snippet source</a> | <a href='#snippet-DotNet.nugetPush' title='Start of snippet'>anchor</a></sup>

If apiKey is not provided, NUGET_KEY environment variable will be used.

If symbolApiKey is not provided, NUGET_SYMBOL_KEY environment variable will be used.

</details>

generate changelog using <a href="https://github.com/easybuild-org/EasyBuild.ChangelogGen">EasyBuild.ChangelogGen</a>

Fable

<details> <summary> <code>Fable.build</code>

  • run Fable compiler in build mode </summary>

<a id='snippet-Fable.build'></a>

(
    ?projFileOrDir: string,
    ?outDir: string,
    ?extension: string,
    ?sourceMaps: bool,
    ?sourceMapsRoot: string,
    ?define: string list,
    ?configuration: string,
    ?verbose: bool,
    ?silent: bool,
    ?typedArrays: bool,
    ?run: string,
    ?runFast: string,
    ?runScript: bool,
    ?noRestore: bool,
    ?noCache: bool,
    ?exclude: string list,
    ?lang: Fable.Lang,
    ?workingDirectory: string
)
: unit

<sup><a href='/src/Fable.fs#L21-L43' title='Snippet source file'>snippet source</a> | <a href='#snippet-Fable.build' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Fable.watch</code>

  • run Fable compiler in watch mode </summary>

<a id='snippet-Fable.watch'></a>

(
    ?projFileOrDir: string,
    ?outDir: string,
    ?extension: string,
    ?sourceMaps: bool,
    ?sourceMapsRoot: string,
    ?define: string list,
    ?configuration: string,
    ?verbose: bool,
    ?silent: bool,
    ?typedArrays: bool,
    ?run: string,
    ?runFast: string,
    ?runScript: bool,
    ?runWatch: string,
    ?noRestore: bool,
    ?noCache: bool,
    ?exclude: string list,
    ?lang: Fable.Lang,
    ?workingDirectory: string
)
: Task

<sup><a href='/src/Fable.fs#L82-L105' title='Snippet source file'>snippet source</a> | <a href='#snippet-Fable.watch' title='Start of snippet'>anchor</a></sup>

</details>

FableCssModules

<details> <summary> <code>FableCssModules.runAsync</code>

  • run <a href="https://www.npmjs.com/package/fable-css-modules">fable-css-modules</a> in async mode </summary>

<a id='snippet-FableCssModules.runAsync'></a>

(?outFile: string, ?``internal``: bool, ?camelCase: bool, ?workingDirectory: string)
: Task

<sup><a href='/src/FableCssModules.fs#L10-L13' title='Snippet source file'>snippet source</a> | <a href='#snippet-FableCssModules.runAsync' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>FableCssModules.run</code>

  • run <a href="https://www.npmjs.com/package/fable-css-modules">fable-css-modules</a> </summary>

<a id='snippet-FableCssModules.run'></a>

(?outFile: string, ?``internal``: bool, ?camelCase: bool, ?workingDirectory: string)
: unit

<sup><a href='/src/FableCssModules.fs#L28-L31' title='Snippet source file'>snippet source</a> | <a href='#snippet-FableCssModules.run' title='Start of snippet'>anchor</a></sup>

</details>

Git

<details> <summary> <code>Git.addAll</code>

  • add all files to staging area </summary>

<a id='snippet-Git.addAll'></a>

()

<sup><a href='/src/Git.fs#L9-L11' title='Snippet source file'>snippet source</a> | <a href='#snippet-Git.addAll' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Git.commitRelease</code>

  • commit staged files with release message using conventional commit </summary>

<a id='snippet-Git.commitRelease'></a>

(newVersion: string)

<sup><a href='/src/Git.fs#L16-L18' title='Snippet source file'>snippet source</a> | <a href='#snippet-Git.commitRelease' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Git.push</code>

  • push to the remote repository </summary>

<a id='snippet-Git.push'></a>

(?force: bool)

<sup><a href='/src/Git.fs#L29-L31' title='Snippet source file'>snippet source</a> | <a href='#snippet-Git.push' title='Start of snippet'>anchor</a></sup>

</details>

Nodemon

<details> <summary> <code>Nodemon.runAsync</code>

  • run <a href="https://www.npmjs.com/package/nodemon">nodemon</a> in async mode </summary>

<a id='snippet-Nodemon.runAsync'></a>

(
    // Configuration
    ?config: string,
    ?exitCrash: bool,
    ?ignore: string list,
    ?noColors: bool,
    ?signal: string,
    ?watch: string list,
    ?noUpdateNotifier: bool,
    // Execution
    ?onChangeOnly: bool,
    ?cwd: string,
    ?extensions: string,
    ?noStdin: bool,
    ?spawn: bool,
    ?exec: string,
    ?yourArgs: string,
    // Watching
    ?delay: string,
    ?legacyWatch: bool,
    ?pollingInterval: int,
    // Information
    ?dump: bool,
    ?verbose: bool,
    ?workingDirectory: string
)
: Task

<sup><a href='/src/Nodemon.fs#L11-L39' title='Snippet source file'>snippet source</a> | <a href='#snippet-Nodemon.runAsync' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Nodemon.run</code>

  • run <a href="https://www.npmjs.com/package/nodemon">nodemon</a> </summary>

<a id='snippet-Nodemon.run'></a>

(
    // Configuration
    ?config: string,
    ?exitCrash: bool,
    ?ignore: string list,
    ?noColors: bool,
    ?signal: string,
    ?watch: string list,
    ?noUpdateNotifier: bool,
    // Execution
    ?onChangeOnly: bool,
    ?cwd: string,
    ?extensions: string,
    ?noStdin: bool,
    ?spawn: bool,
    ?exec: string,
    ?yourArgs: string,
    // Watching
    ?delay: string,
    ?legacyWatch: bool,
    ?pollingInterval: int,
    // Information
    ?dump: bool,
    ?verbose: bool,
    ?workingDirectory: string
)
: unit

<sup><a href='/src/Nodemon.fs#L87-L115' title='Snippet source file'>snippet source</a> | <a href='#snippet-Nodemon.run' title='Start of snippet'>anchor</a></sup>

</details>

Npm

<details> <summary> <code>Npm.publish</code>

  • publish a package to the npm registry </summary>

<a id='snippet-Npm.publish'></a>

(projectDir: string, ?tag: string, ?isRestricted: bool)

<sup><a href='/src/Npm.fs#L10-L12' title='Snippet source file'>snippet source</a> | <a href='#snippet-Npm.publish' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Npm.install</code>

  • install npm packages </summary>

<a id='snippet-Npm.install'></a>

(?workingDirectory: string)

<sup><a href='/src/Npm.fs#L31-L33' title='Snippet source file'>snippet source</a> | <a href='#snippet-Npm.install' title='Start of snippet'>anchor</a></sup>

</details>

PackageJson

<details> <summary> <code>PackageJson.replaceVersion</code>

  • replace the version in a <code>package.json</code> file </summary>

<a id='snippet-PackageJson.replaceVersion'></a>

(file: FileInfo, newVersion: string)

<sup><a href='/src/PackageJson.fs#L15-L17' title='Snippet source file'>snippet source</a> | <a href='#snippet-PackageJson.replaceVersion' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.PackageJson

let packageJsonFile = FileInfo "package.json"
PackageJson.replaceVersion packageJsonFile "1.0.0"

</details>

<details> <summary> <code>PackageJson.getName</code>

  • replace the version in a <code>package.json</code> file </summary>

<a id='snippet-PackageJson.getName'></a>

(file: FileInfo)

<sup><a href='/src/PackageJson.fs#L35-L37' title='Snippet source file'>snippet source</a> | <a href='#snippet-PackageJson.getName' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.PackageJson

let packageJsonFile = FileInfo "package.json"
let packageName = PackageJson.getName packageJsonFile

</details>

<details> <summary> <code>PackageJson.getVersion</code>

  • replace the version in a <code>package.json</code> file </summary>

<a id='snippet-PackageJson.getVersion'></a>

(file: FileInfo)

<sup><a href='/src/PackageJson.fs#L43-L45' title='Snippet source file'>snippet source</a> | <a href='#snippet-PackageJson.getVersion' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.PackageJson

let packageJsonFile = FileInfo "package.json"
let packageVersion = PackageJson.getVersion packageJsonFile

</details>

<details> <summary> <code>PackageJson.needPublishing</code>

  • check if a package needs to be published </summary>

<a id='snippet-PackageJson.needPublishing'></a>

(packageJson: FileInfo)
: bool

<sup><a href='/src/PackageJson.fs#L56-L59' title='Snippet source file'>snippet source</a> | <a href='#snippet-PackageJson.needPublishing' title='Start of snippet'>anchor</a></sup>

Example

open EasyBuild.Tools.PackageJson

let packageJsonFile = FileInfo "package.json"

if PackageJson.needPublishing packageJsonFile then
    // Do something

</details>

Vercel

<details> <summary> <code>Vercel.pull</code>

  • Pull latest environment variables and project settings from Vercel </summary>

<a id='snippet-Vercel.pull'></a>

(
    ?environment: string,
    ?gitBranch: string,
    ?yes: bool,
    ?debug: bool,
    ?globalConfig: string,
    ?localConfig: string,
    ?noColor: bool,
    ?scope: string,
    ?token: string,
    ?workingDirectory: string
)

<sup><a href='/src/Vercel.fs#L31-L44' title='Snippet source file'>snippet source</a> | <a href='#snippet-Vercel.pull' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Vercel.build</code>

  • build the project </summary>

<a id='snippet-Vercel.build'></a>

(
    ?output: string,
    ?prod: bool,
    ?yes: bool,
    ?debug: bool,
    ?globalConfig: string,
    ?localConfig: string,
    ?noColor: bool,
    ?scope: string,
    ?token: string,
    ?workingDirectory: string
)

<sup><a href='/src/Vercel.fs#L71-L84' title='Snippet source file'>snippet source</a> | <a href='#snippet-Vercel.build' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Vercel.deploy</code>

  • deploy your project to Vercel </summary>

<a id='snippet-Vercel.deploy'></a>

(
    ?archive: string,
    ?buildEnv: string,
    ?env: string,
    ?force: bool,
    ?meta: string,
    ?noWait: bool,
    ?prebuilt: bool,
    ?prod: bool,
    ?``public``: bool,
    ?regions: string list,
    ?skipDomain: bool,
    ?withCache: bool,
    ?yes: bool,
    ?debug: bool,
    ?globalConfig: string,
    ?localConfig: string,
    ?noColor: bool,
    ?scope: string,
    ?token: string,
    ?workingDirectory: string
)

<sup><a href='/src/Vercel.fs#L111-L134' title='Snippet source file'>snippet source</a> | <a href='#snippet-Vercel.deploy' title='Start of snippet'>anchor</a></sup>

</details>

Vite

<details> <summary> <code>Vite.build</code>

  • build for production </summary>

<a id='snippet-Vite.build'></a>

(
    ?target: string,
    ?outDir: string,
    ?assetsDir: string,
    ?assetsInlineLimit: int,
    ?ssr: string,
    ?sourcemap: Vite.Build.SourceMap,
    ?minify: Vite.Build.Minifier,
    ?manifest: Vite.Build.Manifest,
    ?ssrManifest: Vite.Build.SSRManifest,
    ?emptyOutDir: bool,
    ?watch: bool,
    ?config: string,
    ?``base``: string,
    ?logLevel: Vite.Build.LogLevel,
    ?clearScreen: bool,
    ?debug: Vite.Build.Debug,
    ?filter: string,
    ?mode: string,
    ?workingDirectory: string
)

<sup><a href='/src/Vite.fs#L72-L94' title='Snippet source file'>snippet source</a> | <a href='#snippet-Vite.build' title='Start of snippet'>anchor</a></sup>

</details>

<details> <summary> <code>Vite.watch</code>

  • start development server </summary>

<a id='snippet-Vite.watch'></a>

(
    ?host: string,
    ?port: int,
    ?``open``: Vite.Watch.Open,
    ?cors: bool,
    ?strictPort: bool,
    ?force: bool,
    ?config: string,
    ?``base``: string,
    ?logLevel: Vite.Watch.LogLevel,
    ?clearScreen: bool,
    ?debug: Vite.Watch.Debug,
    ?filter: string,
    ?mode: string,
    ?workingDirectory: string
)
: Task

<sup><a href='/src/Vite.fs#L191-L209' title='Snippet source file'>snippet source</a> | <a href='#snippet-Vite.watch' title='Start of snippet'>anchor</a></sup>

</details>

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.0 82 12/18/2024
3.3.0 102 12/8/2024
3.2.0 102 12/4/2024
3.1.0 89 11/27/2024
3.0.0 73 11/27/2024
2.0.0 87 11/27/2024
1.1.1 176 11/23/2024
1.1.0 87 11/23/2024
1.0.0 96 11/18/2024