Security News
PyPI Introduces Digital Attestations to Strengthen Python Package Security
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
gulp-csslint
Advanced tools
CSSLint plugin for gulp 3
First, install gulp-csslint
as a development dependency:
npm install --save-dev gulp-csslint
Then, add it to your gulpfile.js
:
var csslint = require('gulp-csslint');
gulp.task('css', function() {
gulp.src('client/css/*.css')
.pipe(csslint())
.pipe(csslint.reporter());
});
Type: Object
If you pass lookup: false
, the local .csslintrc is not looked up automatically.
You can pass rule configuration as an object. See the list of rules by ID on the CSSLint wiki for valid rule IDs.
Any properties passed will be in addition to (or overwriting) the ones in .csslintrc (unless lookup: false
is passed).
gulp.src('client/css/*.css')
.pipe(csslint({
'shorthand': false
}))
.pipe(csslint.reporter());
Type: String
You can also pass the path to your csslintrc file instead of a rule configuration object.
gulp.src('client/css/*.css')
.pipe(csslint('csslintrc.json'))
.pipe(csslint.reporter());
Adds the following properties to the file object:
file.csslint.success = true; // or false
file.csslint.errorCount = 0; // number of errors returned by CSSLint
file.csslint.results = []; // CSSLint errors
file.csslint.opt = {}; // The options you passed to CSSLint
Several reporters come built-in to css-lint. To use one of these reporters, pass the name to csslint.reporter
.
For a list of all reporters supported by csslint
, see the csslint wiki.
gulp.task('lint', function() {
gulp.files('lib/*.css')
.pipe(csslint())
.pipe(csslint.reporter('junit-xml'));
Custom reporter functions can be passed as csslint.reporter(reporterFunc)
. The reporter function will be called for each linted file and passed the file object as described above.
var csslint = require('gulp-csslint');
var gutil = require('gulp-util');
var customReporter = function(file) {
gutil.log(gutil.colors.cyan(file.csslint.errorCount)+' errors in '+gutil.colors.magenta(file.path));
file.csslint.results.forEach(function(result) {
gutil.log(result.error.message+' on line '+result.error.line);
});
};
gulp.task('lint', function() {
gulp.files('lib/*.css')
.pipe(csslint())
.pipe(csslint.reporter(customReporter));
});
Use the csslint.addRule(rule)
method to define custom rules that run in addition to the rules defined in the csslintrc file. See Working with Rules for details.
var csslint = require('gulp-csslint');
csslint.addRule({
// rule information
});
gulp.task('lint', function() {
gulp.files('lib/*.css')
.pipe(csslint())
.pipe(csslint.reporter())
});
Pipe the file stream to csslint.failReporter()
to fail on errors.
var csslint = require('gulp-csslint');
gulp.task('lint', function() {
gulp.files('lib/*.css')
.pipe(csslint())
.pipe(csslint.reporter()) // Display errors
.pipe(csslint.reporter('fail')); // Fail on error (or csslint.failReporter())
});
FAQs
CSSLint plugin for gulp
The npm package gulp-csslint receives a total of 5,198 weekly downloads. As such, gulp-csslint popularity was classified as popular.
We found that gulp-csslint demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.