Skip to content

Linting doesn't work if use import #86

@Fificzu

Description

@Fificzu

Hi, I'm trying to implement Sass-lint into my existing project. I have one main.scss file wherein is a lot of imports like:

@import 'mixins'
@import 'variables'
@import 'chunks/*'

etc.

and my task for gulp looks like:

gulp.task('json-css', () => {
    return gulp
        .src('front/styles/main.scss'})
        .pipe($.plumber())
        .pipe(sassGlob())
        .pipe(sassLint())
        .pipe(sassLint.format())
        .pipe(sassLint.failOnError())
        .pipe(
            $.sass
                .sync({
                    outputStyle: 'compressed',
                    precision: 10,
                    includePaths: ['.'],
                })
                .on('error', $.sass.logError)
        )
        .pipe(gulp.dest('assets/styles'))
});

but it seems to look like sass-lint is only linting main.scss ignoring imports.

Here is my .sass-lint.yml:

options:
  formatter: stylish
  merge-default-rules: false
files:
  include: 'front/styles/**/*.scss'
rules:
  # Extends
  extends-before-mixins: 1
  extends-before-declarations: 1
  placeholder-in-extend: 1

  # Mixins
  mixins-before-declarations: 1

  # Line Spacing
  one-declaration-per-line: 1
  empty-line-between-blocks: 1
  single-line-per-selector: 1

  # Disallows
  no-attribute-selectors: 0
  no-color-hex: 0
  no-color-keywords: 1
  no-color-literals: 1
  no-combinators: 0
  no-css-comments: 0
  no-debug: 1
  no-disallowed-properties: 0
  no-duplicate-properties: 0
  no-empty-rulesets: 1
  no-extends: 0
  no-ids: 0
  no-important: 1
  no-invalid-hex: 1
  no-mergeable-selectors: 1
  no-misspelled-properties: 1
  no-qualifying-elements: 1
  no-trailing-whitespace: 1
  no-trailing-zero: 1
  no-transition-all: 1
  no-universal-selectors: 0
  no-url-domains: 1
  no-url-protocols: 1
  no-vendor-prefixes: 0
  no-warn: 1
  property-units: 0

  # Nesting
  declarations-before-nesting: 1
  force-attribute-nesting: 1
  force-element-nesting: 1
  force-pseudo-nesting: 1

  # Name Formats
  class-name-format: 1
  function-name-format: 1
  id-name-format: 0
  mixin-name-format: 1
  placeholder-name-format: 1
  variable-name-format: 1

  # Style Guide
  attribute-quotes: 1
  bem-depth: 0
  border-zero: 1
  brace-style: 1
  clean-import-paths: 0
  empty-args: 1
  hex-length: 1
  hex-notation: 1
  indentation: 0
  leading-zero: 0
  max-line-length: 0
  max-file-line-count: 0
  nesting-depth: 1
  property-sort-order: 0
  pseudo-element: 0
  quotes: 1
  shorthand-values: 1
  url-quotes: 1
  variable-for-property: 1
  zero-unit: 1

  # Inner Spacing
  space-after-comma: 0
  space-before-colon: 1
  space-after-colon: 1
  space-before-brace: 1
  space-before-bang: 1
  space-after-bang: 1
  space-between-parens: 1
  space-around-operator: 1

  # Final Items
  trailing-semicolon: 1
  final-newline: 1

Any solutions? How to force sass-lint to read imports?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions