npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

crestapps-gulp-msbuild

v1.0.1

Published

msbuild plugin for gulp. Inspired by grunt-msbuild.

Downloads

9

Readme

gulp-msbuild

NPM NPM downloads Travis Coveralls David License

gulp-msbuild has moved

This plugin was blacklisted in the official gulp plugin directory, for apparently not following the Gulp Guidelines. C'est la vie. Being able to .src some solutions and pipeline through an msbuild process seems like a good thing to me.

Contributions welcome.

Usage

First, install gulp-msbuild as a development dependency:

npm install --save-dev gulp-msbuild

Then, add it to your gulpfile.js:

var gulp = require("gulp");
var msbuild = require("gulp-msbuild");

gulp.task("default", function() {
	return gulp.src("./project.sln")
		.pipe(msbuild());
});

Options

If you miss any options, feel free to open an issue.

Example

var gulp = require("gulp");
var msbuild = require("gulp-msbuild");

gulp.task("default", function() {
	return gulp.src("./project.sln")
		.pipe(msbuild({
			targets: ['Clean', 'Build'],
			toolsVersion: 3.5
			})
		);
});

stdout

Show output of msbuild

Default: false

stderr

Show errors of msbuild

Default: true

errorOnFail

If the MSBuild job fails with an error, this will cause the gulp-msbuild stream to return an error thus causing the gulp task to fail. This is useful if using an automated build server such as Jenkins where a failing MSBuild should also cause the overall build job to fail.

Default: false

logCommand

Logs the msbuild command that will be executed.

Default: false

targets

Specify Build Targets

Default:

['Rebuild']

configuration

Specify Build Configuration (Release or Debug)

Default: Release

Hint: You can also specify the Build Configuration using the properties option

properties: { Configuration: 'Debug' }

solutionPlatform

Specify the Solution Platform (e.g. x86, x64, AnyCPU)

Hint: You can also specify the Solution Platform using the properties option

properties: { Platform: 'AnyCPU' }

toolsVersion

Specify the .NET Tools-Version

Default: 4.0

Possible Values: 1.0, 1.1, 2.0, 3.5, 4.0, 12.0, 14.0, 15.0, 'auto'

'auto' attempts to find the latest version >= 12.0, with a fallback to 4.0

This parameter can be omitted by explicitely set them to null or undefined.

architecture

Specify the Architecture

Default: Auto-detected

Possible Values: x86, x64

Example:

msbuild({ architecture: 'x86' })

properties

Specify Custom Build Properties

Default: none

Example:

msbuild({ properties: { WarningLevel: 2 } })

Hint: Property values can use lodash.template templates (e.g. "<%= file.path %>")

verbosity

Specify the amount of information to display in the build output

Default: normal

Possible Values: quiet, minimal, normal, detailed, diagnostic

maxcpucount

Specify Maximal CPU-Count to use

Default: 0 = Automatic selection

Possible Values: -1 (MSBuild Default), 0 (Automatic), > 0 (Concrete value)

nodeReuse

Specify whether to enable or disable the re-use of MSBuild nodes

Default: true = Nodes remain after the build finishes so that subsequent builds can use them

Possible Values: true (MSBuild Default), false

nologo

Suppress Startup Banner and Copyright Message of MSBuild

Default: false -> Show Startup Banner and Copyright Message

fileLoggerParameters

Specify the parameters for the MSBuild File Logger.

Default: None

Example:

msbuild({ fileLoggerParameters: 'LogFile=Build.log;Append;Verbosity=diagnostic' })

Hint: Logger parameters options can use lodash.template templates (e.g. "<%= file.path %>")

consoleLoggerParameters

Specify the parameters for the MSBuild Console Logger. (See fileLoggerParameters for a usage example)

Default: None

Hint: Logger parameters options can use lodash.template templates (e.g. "<%= file.path %>")

loggerParameters

Specify the parameters for a custom MSBuild Logger.

Default: None

Example:

msbuild({ loggerParameters: 'XMLLogger,./MyLogger.dll;OutputAsHTML' })

Hint: Logger parameters options can use lodash.template templates (e.g. "<%= file.path %>")

customArgs

Specify custom msbuild arguments, which don't have a own property in gulp-msbuild.

Default: None

Example:

msbuild({ customArgs: ['/noautoresponse'] })

emitEndEvent

Specify if a gulp end-event should be emitted.

Default: false = No end event is emitted.

Possible Values: true, false

MSBuild Command-Line Reference

For a more detailed description of each MSBuild Option see the MSBuild Command-Line Reference

License

MIT License