eslint-plugin-functional
Advanced tools
Comparing version 1.0.3 to 2.0.0
@@ -8,6 +8,21 @@ # Changelog | ||
## [Unreleased](https://github.com/jonaskello/eslint-plugin-functional/compare/v1.0.2...HEAD) | ||
## [Unreleased](https://github.com/jonaskello/eslint-plugin-functional/compare/v2.0.0...HEAD) | ||
## [v2.0.0](https://github.com/jonaskello/eslint-plugin-functional/compare/v1.0.3...v2.0.0) - 2019-12-29 | ||
### Merged | ||
- build(deps): bump handlebars from 4.1.2 to 4.5.3 [`#84`](https://github.com/jonaskello/eslint-plugin-functional/pull/84) | ||
- Do not enforce a parameter count by default in the lite ruleset [`#83`](https://github.com/jonaskello/eslint-plugin-functional/pull/83) | ||
- Add a section to explicitly list all the rulesets [`#77`](https://github.com/jonaskello/eslint-plugin-functional/pull/77) | ||
- no longer include external recommended rules in the rulesets; put them in their own ruleset [`#80`](https://github.com/jonaskello/eslint-plugin-functional/pull/80) | ||
### Fixed | ||
- feat(functional-parameters): do not enforce a parameter count by default in the lite ruleset [`#79`](https://github.com/jonaskello/eslint-plugin-functional/issues/79) | ||
## [v1.0.3](https://github.com/jonaskello/eslint-plugin-functional/compare/v1.0.2...v1.0.3) - 2019-12-29 | ||
### Merged | ||
- Local mutation in a function now only refers to within the function's body [`#78`](https://github.com/jonaskello/eslint-plugin-functional/pull/78) | ||
@@ -14,0 +29,0 @@ - no-mixed-interface rule does not exist anymore [`#81`](https://github.com/jonaskello/eslint-plugin-functional/pull/81) |
@@ -42,2 +42,8 @@ 'use strict'; | ||
rules: { | ||
"functional/functional-parameters": "error" | ||
} | ||
}; | ||
var config$2 = { | ||
rules: { | ||
"prefer-const": "error", | ||
@@ -64,10 +70,4 @@ "no-param-reassign": "error", | ||
var config$2 = deepMerge__default(config$1, { | ||
var config$3 = { | ||
rules: { | ||
"functional/functional-parameters": "error" | ||
} | ||
}); | ||
var config$3 = deepMerge__default(config$1, { | ||
rules: { | ||
"functional/no-let": "error", | ||
@@ -85,5 +85,5 @@ "functional/immutable-data": "error" | ||
] | ||
}); | ||
}; | ||
var config$4 = deepMerge__default(config$1, { | ||
var config$4 = { | ||
rules: { | ||
@@ -93,5 +93,5 @@ "functional/no-throw-statement": "error", | ||
} | ||
}); | ||
}; | ||
var config$5 = deepMerge__default(config$1, { | ||
var config$5 = { | ||
rules: { | ||
@@ -110,5 +110,5 @@ "functional/no-this-expression": "error", | ||
] | ||
}); | ||
}; | ||
var config$6 = deepMerge__default(config$1, { | ||
var config$6 = { | ||
rules: { | ||
@@ -127,6 +127,6 @@ "functional/no-expression-statement": "error", | ||
] | ||
}); | ||
}; | ||
var config$7 = deepMerge.all([ | ||
config$2, | ||
config$1, | ||
config$3, | ||
@@ -142,3 +142,9 @@ config$4, | ||
"functional/no-expression-statement": "off", | ||
"functional/no-try-statement": "off" | ||
"functional/no-try-statement": "off", | ||
"functional/functional-parameters": [ | ||
"error", | ||
{ | ||
enforceParameterCount: false | ||
} | ||
] | ||
} | ||
@@ -580,3 +586,3 @@ }); | ||
const version = "1.0.2"; | ||
const version = "1.0.3"; | ||
@@ -1941,2 +1947,3 @@ // This function can't be functional as it needs to interact with 3rd-party | ||
recommended: config$7, | ||
"external-recommended": config$2, | ||
lite: config$8, | ||
@@ -1947,3 +1954,3 @@ "no-mutations": config$3, | ||
"no-statements": config$6, | ||
currying: config$2 | ||
currying: config$1 | ||
} | ||
@@ -1950,0 +1957,0 @@ }; |
{ | ||
"name": "eslint-plugin-functional", | ||
"version": "1.0.3", | ||
"version": "2.0.0", | ||
"description": "ESLint rules to disable mutation and promote fp in TypeScript.", | ||
@@ -5,0 +5,0 @@ "main": "lib/index.js", |
@@ -80,3 +80,3 @@ # eslint-plugin-functional | ||
There are several rulesets provided by this plugin. | ||
[See below](#supported-rules) for what they are and what rules are including in each. | ||
[See below](#rulesets) for what they are and what rules are including in each. | ||
@@ -113,2 +113,26 @@ You can enable one of these rulesets like so: | ||
## Rulesets | ||
The following rulesets are made available by this plugin: | ||
Presets: | ||
- **Recommended** (plugin:functional/recommended) | ||
- **Lite** (plugin:functional/lite) | ||
Categorized: | ||
- **No Mutations** (plugin:functional/no-mutations) | ||
- **No Object Orientation** (plugin:functional/no-object-orientation) | ||
- **No Statements** (plugin:functional/no-statements) | ||
- **No Exceptions** (plugin:functional/no-exceptions) | ||
- **Currying** (plugin:functional/currying) | ||
Other: | ||
- **All** (plugin:functional/all) - Enables all rules defined in this plugin. | ||
- **External Recommended** (plugin:functional/external-recommended) - Configures recommended rules not defined by this plugin. | ||
The [below section](#supported-rules) gives details on which rules are enabled by each ruleset. | ||
## Supported Rules | ||
@@ -207,2 +231,25 @@ | ||
## Minimal Recommended Config | ||
```json | ||
{ | ||
"parser": "@typescript-eslint/parser", | ||
"plugins": ["@typescript-eslint", "functional"], | ||
"env": { | ||
"es6": true | ||
}, | ||
"extends": [ | ||
"eslint:recommended", | ||
"plugin:@typescript-eslint/eslint-recommended", | ||
"plugin:@typescript-eslint/recommended", | ||
"plugin:functional/external-recommended", | ||
"plugin:functional/recommended" | ||
], | ||
"parserOptions": { | ||
"project": "tsconfig.json", | ||
"sourceType": "module" | ||
} | ||
} | ||
``` | ||
## How to contribute | ||
@@ -209,0 +256,0 @@ |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
156547
3770
290