Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: sasstools/sass-lint
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.9.1
Choose a base ref
...
head repository: sasstools/sass-lint
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Aug 25, 2016

  1. Unverified

    This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
    Copy the full SHA
    ecdcc98 View commit details
  2. Copy the full SHA
    9836960 View commit details
  3. Copy the full SHA
    a120002 View commit details
  4. Copy the full SHA
    cf9472a View commit details
  5. Copy the full SHA
    d506b26 View commit details
  6. issue-813 -- Adds unit tests

    danwaz committed Aug 25, 2016
    Copy the full SHA
    75ac1f0 View commit details
  7. Copy the full SHA
    45074f7 View commit details
  8. Copy the full SHA
    1a8d984 View commit details
  9. Copy the full SHA
    453bac4 View commit details
  10. Merge pull request #845 from sasstools/release/1.9.1

    Release/1.9.1
    DanPurdy authored Aug 25, 2016
    Copy the full SHA
    c3a0260 View commit details
  11. Copy the full SHA
    c995feb View commit details
  12. Copy the full SHA
    6fff0a0 View commit details
  13. Copy the full SHA
    56d3e4f View commit details

Commits on Aug 26, 2016

  1. Copy the full SHA
    21f836e View commit details
  2. Merge pull request #846 from danwaz/feature/issue-813-no-url-protocol…

    …-fix
    
    Updates no-url-protocols rule and adds additional no-domains rule
    DanPurdy authored Aug 26, 2016
    Copy the full SHA
    01eb696 View commit details
  3. Copy the full SHA
    0a0277a View commit details

Commits on Sep 1, 2016

  1. Reimplement max-warnings as a proper option

    - Remove custom, slightly hacky code for `max-warnings` from `bin/sass-lint.js`
    - Tidy up `bin/sass-lint.js` more generally
    - Add `max-warnings` as an option to be passed to `failOnError`, either through a config file or through passing options directly
    - Add documentation for the max-warnings option
    - Create new descriptive exceptions for `failOnError` - MaxWarningsExceededError and SassLintFailureError
    - Test the functionality of `failOnError`
    nottrobin committed Sep 1, 2016
    Copy the full SHA
    fbaf738 View commit details

Commits on Sep 2, 2016

  1. Merge pull request #857 from nottrobin/max-warnings-option

    Reimplement max-warnings as a proper option
    DanPurdy authored Sep 2, 2016
    Copy the full SHA
    b7bcb3a View commit details

Commits on Sep 6, 2016

  1. Copy the full SHA
    6aa9544 View commit details
  2. Copy the full SHA
    7153320 View commit details
  3. Capitalise warning message

    onishiweb committed Sep 6, 2016
    Copy the full SHA
    9a7b528 View commit details
  4. Copy the full SHA
    9d671c4 View commit details

Commits on Oct 17, 2016

  1. Copy the full SHA
    c08b4a8 View commit details
  2. Copy the full SHA
    074e47b View commit details

Commits on Oct 19, 2016

  1. Copy the full SHA
    c8f2e6c View commit details

Commits on Oct 20, 2016

  1. Copy the full SHA
    87e3f0d View commit details
  2. Merge pull request #895 from sasstools/greenkeeper-gonzales-pe-3.4.5

    Update gonzales-pe to version 3.4.5 🚀
    DanPurdy authored Oct 20, 2016
    Copy the full SHA
    a66c707 View commit details

Commits on Oct 21, 2016

  1. 🎨 Skip all front matter

    DanPurdy committed Oct 21, 2016
    Copy the full SHA
    48a7b77 View commit details
  2. Copy the full SHA
    4bf2237 View commit details

Commits on Oct 22, 2016

  1. Copy the full SHA
    36b3b8f View commit details
  2. Copy the full SHA
    bbb5507 View commit details

Commits on Oct 24, 2016

  1. Merge pull request #906 from sasstools/greenkeeper-gonzales-pe-3.4.7

    Update gonzales-pe to version 3.4.7 🚀
    DanPurdy authored Oct 24, 2016
    Copy the full SHA
    47ae2e7 View commit details
  2. Copy the full SHA
    987e096 View commit details
  3. Copy the full SHA
    8b14865 View commit details
  4. Merge pull request #897 from DanPurdy/feature/skip-front-matter

    Skip all front matter
    bgriffith authored Oct 24, 2016
    Copy the full SHA
    c53043e View commit details
  5. Copy the full SHA
    8f91e3c View commit details
  6. Merge pull request #894 from DanPurdy/feature/patch-space-before-colon

    Prevent checking is of undefined
    bgriffith authored Oct 24, 2016
    Copy the full SHA
    6fd0341 View commit details

Commits on Oct 25, 2016

  1. Copy the full SHA
    d64b2b7 View commit details
  2. Remove gonzales patch

    DanPurdy authored Oct 25, 2016
    Copy the full SHA
    3142104 View commit details
  3. Copy the full SHA
    b82788f View commit details
  4. Copy the full SHA
    3e05a34 View commit details
  5. Copy the full SHA
    5585216 View commit details
  6. typo in readme

    mrjamesriley authored Oct 25, 2016
    Copy the full SHA
    c448971 View commit details
  7. Merge pull request #910 from mrjamesriley/develop

    Clearer readme for configuring a rule
    DanPurdy authored Oct 25, 2016
    Copy the full SHA
    cbfe9ea View commit details
  8. Copy the full SHA
    37773be View commit details
  9. Merge pull request #911 from bgriffith/feature/local-cli

    Correct cli tests to use bin
    DanPurdy authored Oct 25, 2016
    Copy the full SHA
    5b125b6 View commit details

Commits on Oct 26, 2016

  1. Copy the full SHA
    fd8d01b View commit details
  2. Merge pull request #903 from DanPurdy/feature/fix-variable-name-format

    Fix operators in variable names
    bgriffith authored Oct 26, 2016
    Copy the full SHA
    d31e7e5 View commit details
  3. Copy the full SHA
    c1aa039 View commit details
  4. Merge pull request #848 from DanPurdy/feature/fix-shorthand-values

    Fix shorthand-values
    bgriffith authored Oct 26, 2016
    Copy the full SHA
    8a3f293 View commit details
Showing with 4,166 additions and 502 deletions.
  1. +6 −2 .eslintrc
  2. +14 −0 .npmignore
  3. +0 −4 .travis.yml
  4. +139 −0 CHANGELOG.md
  5. +107 −8 README.md
  6. +0 −10 appveyor.yml
  7. +21 −36 bin/sass-lint.js
  8. +30 −0 docs/options/max-warnings.md
  9. +1 −1 docs/rules/attribute-quotes.md
  10. +16 −0 docs/rules/border-zero.md
  11. +4 −0 docs/rules/class-name-format.md
  12. +29 −0 docs/rules/declarations-before-nesting.md
  13. +27 −0 docs/rules/max-file-line-count.md
  14. +24 −0 docs/rules/max-line-length.md
  15. +1 −1 docs/rules/no-duplicate-properties.md
  16. +37 −0 docs/rules/no-url-domains.md
  17. +42 −2 docs/rules/no-url-protocols.md
  18. +95 −0 docs/rules/variable-for-property.md
  19. +2 −0 docs/sass-lint.yml
  20. +71 −0 docs/toggle-rules-in-src.md
  21. +34 −7 index.js
  22. +4 −0 lib/config.js
  23. +19 −0 lib/config/property-sort-orders/concentric.yml
  24. +4 −0 lib/config/sass-lint.yml
  25. +19 −0 lib/exceptions.js
  26. +16 −2 lib/groot.js
  27. +26 −3 lib/helpers.js
  28. +249 −0 lib/ruleToggler.js
  29. +18 −2 lib/rules/border-zero.js
  30. +55 −0 lib/rules/declarations-before-nesting.js
  31. +1 −1 lib/rules/empty-line-between-blocks.js
  32. +25 −0 lib/rules/max-file-line-count.js
  33. +32 −0 lib/rules/max-line-length.js
  34. +4 −4 lib/rules/no-color-keywords.js
  35. +7 −4 lib/rules/no-color-literals.js
  36. +13 −1 lib/rules/no-duplicate-properties.js
  37. +3 −1 lib/rules/no-empty-rulesets.js
  38. +2 −5 lib/rules/no-mergeable-selectors.js
  39. +117 −19 lib/rules/no-misspelled-properties.js
  40. +7 −11 lib/rules/no-universal-selectors.js
  41. +33 −0 lib/rules/no-url-domains.js
  42. +13 −9 lib/rules/no-url-protocols.js
  43. +7 −1 lib/rules/shorthand-values.js
  44. +23 −22 lib/rules/space-after-colon.js
  45. +37 −6 lib/rules/space-around-operator.js
  46. +54 −20 lib/rules/space-before-bang.js
  47. +1 −1 lib/rules/space-before-colon.js
  48. +16 −0 lib/rules/trailing-semicolon.js
  49. +50 −4 lib/rules/variable-for-property.js
  50. +1 −0 lib/rules/variable-name-format.js
  51. +17 −2 lib/rules/zero-unit.js
  52. +6 −4 package.json
  53. +5 −0 tests/bom-utf8/starts-with-mixin-utf8-bom.scss
  54. +5 −0 tests/bom-utf8/var-utf8-bom.scss
  55. +113 −32 tests/cli.js
  56. +90 −0 tests/failures.js
  57. +1 −1 tests/helpers/attemptTraversal.js
  58. +1 −1 tests/helpers/collectSuffixExtensions.js
  59. +1 −1 tests/helpers/isNewLine.js
  60. +1 −1 tests/helpers/isSpace.js
  61. +2 −2 tests/helpers/isStrictBEM.js
  62. +28 −0 tests/helpers/stripBom.js
  63. +36 −15 tests/main.js
  64. +326 −0 tests/ruleToggler.js
  65. +4 −4 tests/rules/attribute-quotes.js
  66. +58 −0 tests/rules/border-zero.js
  67. +18 −18 tests/rules/class-name-format.js
  68. +35 −0 tests/rules/declarations-before-nesting.js
  69. +1 −2 tests/rules/force-pseudo-nesting.js
  70. +2 −2 tests/rules/function-name-format.js
  71. +63 −0 tests/rules/max-file-line-count.js
  72. +63 −0 tests/rules/max-line-length.js
  73. +2 −2 tests/rules/mixin-name-format.js
  74. +2 −2 tests/rules/no-attribute-selectors.js
  75. +6 −6 tests/rules/no-color-literals.js
  76. +6 −6 tests/rules/no-duplicate-properties.js
  77. +1 −1 tests/rules/no-empty-rulesets.js
  78. +2 −4 tests/rules/no-mergeable-selectors.js
  79. +6 −6 tests/rules/no-misspelled-properties.js
  80. +35 −0 tests/rules/no-url-domains.js
  81. +29 −0 tests/rules/no-url-protocols.js
  82. +2 −2 tests/rules/placeholder-name-format.js
  83. +14 −14 tests/rules/shorthand-values.js
  84. +4 −4 tests/rules/space-after-bang.js
  85. +2 −2 tests/rules/space-after-colon.js
  86. +3 −3 tests/rules/space-around-operator.js
  87. +4 −4 tests/rules/space-before-bang.js
  88. +2 −2 tests/rules/trailing-semicolon.js
  89. +1 −1 tests/rules/url-quotes.js
  90. +106 −0 tests/rules/variable-for-property.js
  91. +10 −10 tests/rules/variable-name-format.js
  92. +12 −13 tests/sass/attribute-quotes.sass
  93. +14 −13 tests/sass/attribute-quotes.scss
  94. +6 −0 tests/sass/border-zero.scss
  95. +30 −0 tests/sass/class-name-format.sass
  96. +38 −0 tests/sass/class-name-format.scss
  97. +34 −0 tests/sass/declarations-before-nesting.sass
  98. +44 −0 tests/sass/declarations-before-nesting.scss
  99. 0 tests/sass/empty-file.sass
  100. +0 −1 tests/sass/extends-before-mixins.sass
  101. +4 −5 tests/sass/force-pseudo-nesting.sass
  102. +7 −0 tests/sass/front-matter/front-matter.scss
  103. +8 −8 tests/sass/indentation/indentation-spaces.sass
  104. +8 −8 tests/sass/indentation/indentation-tabs.sass
  105. +301 −0 tests/sass/max-file-line-count.sass
  106. +301 −0 tests/sass/max-file-line-count.scss
  107. +20 −0 tests/sass/max-line-length.sass
  108. +22 −0 tests/sass/max-line-length.scss
  109. +10 −11 tests/sass/mixins-before-declarations.sass
  110. +6 −12 tests/sass/no-attribute-selectors.sass
  111. +9 −15 tests/sass/no-attribute-selectors.scss
  112. +2 −0 tests/sass/no-color-keywords.sass
  113. +2 −0 tests/sass/no-color-keywords.scss
  114. +8 −0 tests/sass/no-color-literals.sass
  115. +10 −0 tests/sass/no-color-literals.scss
  116. +15 −0 tests/sass/no-duplicate-properties.sass
  117. +17 −0 tests/sass/no-duplicate-properties.scss
  118. +7 −0 tests/sass/no-empty-rulesets.scss
  119. +22 −30 tests/sass/no-mergeable-selectors.sass
  120. +37 −3 tests/sass/no-misspelled-properties.sass
  121. +57 −12 tests/sass/no-misspelled-properties.scss
  122. +25 −0 tests/sass/no-url-domains.sass
  123. +27 −0 tests/sass/no-url-domains.scss
  124. +2 −0 tests/sass/ruleToggler-disable-a-block.sass
  125. +3 −0 tests/sass/ruleToggler-disable-a-block.scss
  126. +2 −0 tests/sass/ruleToggler-disable-a-line.sass
  127. +3 −0 tests/sass/ruleToggler-disable-a-line.scss
  128. +1 −0 tests/sass/ruleToggler-disable-a-rule.sass
  129. +1 −0 tests/sass/ruleToggler-disable-a-rule.scss
  130. +3 −0 tests/sass/ruleToggler-disable-all-then-reenable.sass
  131. +3 −0 tests/sass/ruleToggler-disable-all-then-reenable.scss
  132. +1 −0 tests/sass/ruleToggler-disable-all.sass
  133. +1 −0 tests/sass/ruleToggler-disable-all.scss
  134. +1 −0 tests/sass/ruleToggler-disable-multiple-rules.sass
  135. +1 −0 tests/sass/ruleToggler-disable-multiple-rules.scss
  136. +5 −0 tests/sass/ruleToggler-disable-then-enable.sass
  137. +6 −0 tests/sass/ruleToggler-disable-then-enable.scss
  138. +2 −0 tests/sass/ruleToggler-empty-comment.sass
  139. +3 −0 tests/sass/ruleToggler-empty-comment.scss
  140. +17 −0 tests/sass/ruleToggler-guarantee-order.sass
  141. +17 −0 tests/sass/ruleToggler-guarantee-order.scss
  142. +2 −0 tests/sass/ruleToggler-ignore-unknown.sass
  143. +3 −0 tests/sass/ruleToggler-ignore-unknown.scss
  144. +7 −0 tests/sass/shorthand-values.sass
  145. +9 −0 tests/sass/shorthand-values.scss
  146. +32 −0 tests/sass/space-after-bang.sass
  147. +32 −0 tests/sass/space-after-bang.scss
  148. +6 −0 tests/sass/space-after-colon.sass
  149. +14 −0 tests/sass/space-after-colon.scss
  150. +35 −9 tests/sass/space-around-operator.sass
  151. +37 −7 tests/sass/space-around-operator.scss
  152. +32 −0 tests/sass/space-before-bang.sass
  153. +33 −1 tests/sass/space-before-bang.scss
  154. +3 −0 tests/sass/success.scss
  155. +4 −3 tests/sass/trailing-semicolon.scss
  156. +2 −6 tests/sass/url-quotes.sass
  157. +0 −4 tests/sass/url-quotes.scss
  158. +15 −0 tests/sass/variable-for-property.sass
  159. +16 −0 tests/sass/variable-for-property.scss
  160. +4 −0 tests/sass/variable-name-format.sass
  161. +5 −0 tests/sass/variable-name-format.scss
  162. +2 −0 tests/yml/.indentation-error.yml
  163. +2 −0 tests/yml/.indentation-warn.yml
  164. +2 −0 tests/yml/.max-0-warnings.yml
  165. +2 −0 tests/yml/.max-10-warnings.yml
  166. +2 −0 tests/yml/.max-100-warnings.yml
  167. +8 −0 tests/yml/.sass-lint.yml/.sass-lint.yml
  168. +13 −0 tests/yml/.sasslintrc/.sasslintrc
8 changes: 6 additions & 2 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -135,8 +135,12 @@ rules:
- global
valid-jsdoc:
- 2
- prefer:
return: returns
-
requireParamDescription: true
requireReturnDescription: true
requireReturn: false
prefer:
return: "returns"
wrap-iife: 2
yoda:
- 2
14 changes: 14 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
.github
coverage
docs
tests
.editorconfig
.eslintrc
.gitignore
.npmignore
.npmrc
.travis.yml
.nvmrc
appveyor.yml
CONTRIBUTING.md
CODE_OF_CONDUCT.md
4 changes: 0 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
language: node_js
node_js:
- '0.10'
- '0.12'
- '4'
- '5'
- node
- iojs
before_script: npm link
after_success: npm run coveralls
notifications:
slack:
139 changes: 139 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,144 @@
# Sass Lint Changelog

## v1.13.1

**Fixes**
* Same as v1.12.1 - 1.13.0 was released by accident and contains many breaking changes - npm unpublishing failed so this unfortnately bumps our version a few spots -


## v1.13.0

**IGNORE ME - SORRY**

## v1.12.1

**October 17th, 2017**

**Fixes**
* Temporarily move to our gonzales-pe-sl fork to publish fixes that currently don't exist on the gonzales-pe published version

## v1.12.0

**October 3rd, 2017**

**Fixes**
* Fixed an issue with custom properties being flagged in the misspelled-properties rule [#1122](https://github.com/sasstools/sass-lint/pull/1122)
* Fixed an issue where custom properties with colors in their name would be flagged as invalid by no-color-keywords [#1124](https://github.com/sasstools/sass-lint/pull/1124)
* Fixed a crash in empty-line-between-blocks where acessing the content of a parent node of type string would throw an error [#1125](https://github.com/sasstools/sass-lint/pull/1125)
* Functions and custom properties were being incorrectly flagged as invalid within rgba functions for no-color-literals [#1127](https://github.com/sasstools/sass-lint/pull/1127)
* Fixed an incorrect warning in space-after-colon when using `@at-root` [#1129](https://github.com/sasstools/sass-lint/pull/1129)
* Fixed an issue where interpolation was incorrectly flagging within the class-name-format rule [#1131](https://github.com/sasstools/sass-lint/pull/1131)


**New Features**
* Rollup.js integration added to integration list
* Added an npmignore to remove unnecessary dev files from a sass-lint install / release [#1132](https://github.com/sasstools/sass-lint/pull/1132)
* Added basic support for a `.sasslintrc` json config file [#1135](https://github.com/sasstools/sass-lint/pull/1135)
* Added two new options to the variable-for-property rule - [allow-map-get](https://github.com/sasstools/sass-lint/blob/master/docs/rules/variable-for-property.md#allow-map-get-true) & [allowed-functions](https://github.com/sasstools/sass-lint/blob/master/docs/rules/variable-for-property.md#allowed-functions-) - [#1128](https://github.com/sasstools/sass-lint/pull/1128)

## v1.11.1

**August 28th, 2017**

**Fixes**
* Fixed an issue with the `misspelled-properties` rule incorrectly reporting nested properties [#1113](https://github.com/sasstools/sass-lint/pull/1113)

## v1.11.0

**August 27th, 2017**

**New Features**
* The `trailing-semicolon` rule now checks for double semicolons [#1107](https://github.com/sasstools/sass-lint/pull/1107)

**Changes**
* Updated `gonzales-pe` parser to use version 4.1.1
* The `no-empty-rulesets` rule now flags rulesets that contain only comments [#998](https://github.com/sasstools/sass-lint/pull/998)
* The `misspelled-properties` rule now uses the [known-css-properties](https://www.npmjs.com/package/known-css-properties) to validate properties.
* The `zero-unit` rule now considers the `%` unit [#1103](https://github.com/sasstools/sass-lint/pull/1103)

**Fixes**
* Fixed a fatal error with the `space-after-bang` rule [#1108](https://github.com/sasstools/sass-lint/pull/1108)
* Fixed an issue where line numbers were incorrect when using `front-matter` [#1060](https://github.com/sasstools/sass-lint/pull/1060)
* Fixed an issue with the `misspelled-properties` rule incorrectly reporting multiline properties [#1106](https://github.com/sasstools/sass-lint/pull/1106)

## v1.10.2

**November 9th, 2016**

**Changes**
* Reverted back to ESlint v2.x to prevent a breaking change in Node < v4

**Fixes**
* Fixed an exception for partial idents in `space-around-operator` [#940](https://github.com/sasstools/sass-lint/pull/940)
* Fixed an issue with negative numbers in `space-around-operator` [#945](https://github.com/sasstools/sass-lint/pull/945)

## v1.10.1

**November 7th, 2016**

**Fixes**

* Fixed an issue with the `--no-exit` `-q` flag not being respected and unhandled errors/exceptions being thrown by the CLI
* Fixed an issue with variable declarations showing as properties in the `no-duplicate-properties` rule [#937](https://github.com/sasstools/sass-lint/pull/936)
* Fixed an issue with variable declarations showing as properties in the `declarations-before-nesting` rule [#937](https://github.com/sasstools/sass-lint/pull/936)

## v1.10.0

**November 6th, 2016**

The 'you can ignore those bad habits again' update

** :tada: DISABLE LINTERS :tada: **
The ability to enable and disable linters on the fly has finally(!) been added [#677](https://github.com/sasstools/sass-lint/pull/677) [docs](https://github.com/sasstools/sass-lint/blob/master/docs/toggle-rules-in-src.md)

A massive thank you to everyone who commented/contributed/reported and tested this feature this was very much a community effort here. An extra special thank you to
* [@donabrams](https://github.com/donabrams)

For his initial hard work in getting this off the ground. There were lots of others who have fixed everything from test issues to AST issues to make this possible afterwards, so thanks to you too!

**New Features**
* `max-warnings` which is available with the sass-lint CLI is now available as an option in your config file too [#857](https://github.com/sasstools/sass-lint/pull/857)
* **New Rule** `no-url-domains` rule [#846](https://github.com/sasstools/sass-lint/pull/846) [docs](https://github.com/sasstools/sass-lint/blob/master/docs/rules/no-url-domains.md)
* **New Rule** `max-line-length` rule was added [#840](https://github.com/sasstools/sass-lint/pull/840) [docs](https://github.com/sasstools/sass-lint/blob/master/docs/rules/max-line-length.md)
* **New Rule** `max-file-line-count` rule was added [#842](https://github.com/sasstools/sass-lint/pull/842) [docs](https://github.com/sasstools/sass-lint/blob/master/docs/rules/max-file-line-count.md)
* **New Rule** `declarations-before-nesting` rule was added [#866](https://github.com/sasstools/sass-lint/pull/866) [docs](https://github.com/sasstools/sass-lint/blob/master/docs/rules/declarations-before-nesting.md)

**Fixes**
* Fixed an issue with an un handled error being thrown in certain circumstances for the `space-before-colon` rule [#894](https://github.com/sasstools/sass-lint/pull/894)
* Operators in variable names are now handled correctly for the `variable-name-format` rule [#903](https://github.com/sasstools/sass-lint/pull/903)
* Fixed an issue with string values in the `shorthand-values` rule [#848](https://github.com/sasstools/sass-lint/pull/848)
* Fixed an issue with valid strict BEM producing an error in the `*-name-format` rules [#892](https://github.com/sasstools/sass-lint/pull/892)
* Fixed an issue with non-string user conventions in the `border-zero` rule [#913](https://github.com/sasstools/sass-lint/pull/913)
* Fixed an issue where BOM markers in files were causing parse errors or random errors/warnings [#893](https://github.com/sasstools/sass-lint/pull/893)
* Fixed an issue with interpolates properties in the `no-duplicate-properties` rule [#915](https://github.com/sasstools/sass-lint/pull/915)
* Fixed a possible error with invalid user conventions in the `border-zero` rule [#926](https://github.com/sasstools/sass-lint/pull/926)

**Changes**
* Node 0.10 and 0.12 are no longer officially supported by sass-lint. We've not deliberately broken these builds but we will no longer be testing against them either [#896](https://github.com/sasstools/sass-lint/issues/896) & [#924](https://github.com/sasstools/sass-lint/pull/924)
* In future the `no-url-protocols` rule will not lint domains in URL's for now a new flag is added to mimic this behaviour. The new `no-url-domains` rule can be used instead [#813](https://github.com/sasstools/sass-lint/issues/813)
* Front matter such as those present in Jekyll templates will now be ignored in all files before passing to the AST / Linting [897](https://github.com/sasstools/sass-lint/pull/897)
* Running the tests no longer required sass-lint development to be `npm-link`ed or globally installed. [#911](https://github.com/sasstools/sass-lint/pull/911)
* The concentric property list in `property-sort-order` was updated to reflect the latest release [#922](https://github.com/sasstools/sass-lint/pull/922)

**Updates**
* AST fixes have arrived with version 3.4.7 of gonzales-pe [#906](https://github.com/sasstools/sass-lint/pull/906)
* Updated to the latest versions of many other packages

**Documentation**
* The documentation around configuring a rule was tidied up and made clearer [#910](https://github.com/sasstools/sass-lint/pull/910)

**Special thanks to**

* [bgriffith](https://github.com/bgriffith)
* [donabrams](https://github.com/donabrams)
* [danpurdy](https://github.com/DanPurdy)
* [danwaz](https://github.com/danwaz)
* [lucasjahn](https://github.com/lucasjahn)
* [mrjamesriley](https://github.com/mrjamesriley)
* [notrobin](https://github.com/nottrobin)
* [onishiweb](https://github.com/onishiweb)
* [richarddewit](https://github.com/richarddewit)

## v1.9.1

**August 25, 2016**
115 changes: 107 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -21,7 +21,7 @@ npm install sass-lint --save-dev

## Configuring

Sass-lint can be configured from a `.sass-lint.yml` file in your project. If you don't have one in the root of your project or you would like all your projects to follow a standard config file then you can specify the path to one in your project's `package.json` file.
Sass-lint can be configured from a `.sass-lint.yml` or `.sasslintrc` file in your project. The `.sasslintrc` file can be in either JSON format or YAML. Both formats are interchangeable easily using tools such as [json2yaml](https://www.json2yaml.com/). If you don't either file in the root of your project or you would like all your projects to follow a standard config file then you can specify the path to one in your project's `package.json` file with the `sasslintConfig` option.

For example:
```javascript
@@ -32,7 +32,7 @@ For example:
}
```

Use the [Sample Config](https://github.com/sasstools/sass-lint/tree/master/docs/sass-lint.yml) as a guide to create your own `.sass-lint.yml` config file. The default configuration can be found [here](https://github.com/sasstools/sass-lint/blob/master/lib/config/sass-lint.yml).
Use the [Sample Config (YAML)](https://github.com/sasstools/sass-lint/tree/master/docs/sass-lint.yml) or [Sample Config (JSON)](https://github.com/sasstools/sass-lint/tree/master/docs/sasslintrc) as a guide to create your own config file. The default configuration can be found [here](https://github.com/sasstools/sass-lint/blob/master/lib/config/sass-lint.yml).

### [Configuration Documentation](https://github.com/sasstools/sass-lint/tree/master/docs/options)

@@ -48,7 +48,6 @@ The following are options that you can use to config the Sass Linter.
* [merge-default-rules](https://github.com/sasstools/sass-lint/tree/master/docs/options/merge-default-rules.md) - Allows you to merge your rules with the default config file included with sass-lint
* [output-file](https://github.com/sasstools/sass-lint/tree/master/docs/options/output-file.md) - Choose to write the linters output to a file


#### Files

The `files` option contains two properties, `include` and `ignore`. Both can be set to either a [glob](https://github.com/isaacs/node-glob) or an array of glob strings/file paths depending on your projects' needs and setup.
@@ -79,19 +78,97 @@ For all [rules](https://github.com/sasstools/sass-lint/tree/master/docs/rules),

If you want to configure options, set the rule to an array, where the first item in the array is the severity, and the second item in the array is an object including the options you would like to set.

An example configuration of a rule with options look like the following:
Here is an example configuration of a rule, where we are specifying that breaking the [indentation rule](https://github.com/sasstools/sass-lint/blob/master/docs/rules/indentation.md) should be treated as an error (its severity set to two), and setting the `size` option of the rule to 2 spaces:

```yml
indentation:
- 2
-
size: 2
rules:
indentation:
- 2
-
size: 2
```

### [Rules Documentation](https://github.com/sasstools/sass-lint/tree/master/docs/rules)

---

## Disabling Linters via Source

Special comments can be used to disable and enable certain rules throughout your source files in a variety of scenarios. These can be useful when dealing with legacy code or with certain necessary code smells. You can read the documentation for this feature [here](https://github.com/sasstools/sass-lint/tree/master/docs/toggle-rules-in-src.md).

Below are examples of how to use this feature:


### Disable a rule for the entire file

```scss
// sass-lint:disable border-zero
p {
border: none; // No lint reported
}
```

### Disable more than 1 rule

```scss
// sass-lint:disable border-zero, quotes
p {
border: none; // No lint reported
content: "hello"; // No lint reported
}
```

### Disable a rule for a single line

```scss
p {
border: none; // sass-lint:disable-line border-zero
}
```

### Disable all lints within a block (and all contained blocks)

```scss
p {
// sass-lint:disable-block border-zero
border: none; // No result reported
}
a {
border: none; // Failing result reported
}
```

### Disable and enable again

```scss
// sass-lint:disable border-zero
p {
border: none; // No result reported
}
// sass-lint:enable border-zero
a {
border: none; // Failing result reported
}
```

### Disable/enable all linters

```scss
// sass-lint:disable-all
p {
border: none; // No result reported
}
// sass-lint:enable-all
a {
border: none; // Failing result reported
}
```

---

## CLI

Sass Lint [`v1.1.0`](https://github.com/sasstools/sass-lint/releases/tag/v1.1.0) introduced the ability to run Sass Lint through a command line interface. See the [CLI Docs](https://github.com/sasstools/sass-lint/tree/master/docs/cli) for full documentation on how to use the CLI.
@@ -169,6 +246,24 @@ For further information you can visit our CLI documentation linked below.
---
## Front matter
Certain static site generators such as [Jekyll](http://jekyllrb.com/docs/frontmatter/) include the YAML front matter block at the top of their scss file. Sass-lint by default checks a file for this block and attempts to parse your Sass without this front matter. You can see an example of a front matter block below.
```scss
---
# Only the main Sass file needs front matter (the dashes are enough)
---
.test {
color: red;
}
```

---

## Contributions

We welcome all contributions to this project but please do read our [contribution guidelines](https://github.com/sasstools/sass-lint/blob/master/CONTRIBUTING.md) first, especially before opening a pull request. It would also be good to read our [code of conduct](https://github.com/sasstools/sass-lint/blob/master/CODE_OF_CONDUCT.md).
@@ -188,6 +283,10 @@ Our AST is [Gonzales-PE](https://github.com/tonyganch/gonzales-pe/tree/dev). Eac
* [Gulp](https://www.npmjs.com/package/gulp-sass-lint)
* [Grunt](https://github.com/sasstools/grunt-sass-lint)

## Module Bundler Integration

* [rollup.js](https://github.com/kopacki/rollup-plugin-sass-lint)

## IDE Integration

* [Atom](https://atom.io/packages/linter-sass-lint)
10 changes: 0 additions & 10 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -5,27 +5,17 @@ init:
# Test against this version of Node.js
environment:
matrix:
- nodejs_version: '0.10'
- nodejs_version: '0.12'
# io.js
- nodejs_version: '1'
- nodejs_version: '4'
- nodejs_version: '5'
# Latest stable version of Node
- nodejs_version: 'stable'
matrix:
# Help instructions and version number don't show in appveyor
allow_failures:
- nodejs_version: '0.10'

# Install scripts. (runs after repo cloning)
install:
# Get the latest stable version of Node.js or io.js
- ps: Install-Product node $env:nodejs_version
# install modules
- npm install
# link
- npm link

# Post-install test scripts.
test_script:
Loading