jscsrc-guesser
v0.5.0
Published
Determine the JSCS ruleset some code currently follows
Downloads
3
Readme
jscsrc-guesser – JSCS configuration guesser
jscsrc-guesser is a tool that checks some code base and finds those JSCS rules the code base follows.
This version emits rules for JSCS 2.2.*.
Installation
$ npm install -g jscsrc-guesser
Usage
Just run jscsrc-guesser
with your code path(s) as argument(s):
$ jscsrc-guesser bin/ lib/ tests/ > autogenerated.jscsrc
You can also pass some optional arguments you could pass to jscs
:
$ jscsrc-guesser --esnext index.js > autogenerated.jscsrc
Known limitations
disallowSpaceBeforeSemicolon
is not tried withallExcept
valuesrequireNamedUnassignedFunctions
is not tried withallExcept
valuesrequireSpacesInsideArrayBrackets
is not tried withallExcept
valuesrequireSpacesInsideObjectBrackets
is not tried withallExcept
valuesvalidateCommentPosition
is not tried withallExcept
valuesrequireCapitalizedComments
is only tried with valuetrue
requireOperatorBeforeLineBreak
is only tried with valuetrue
disallowOperatorBeforeLineBreak
is only tried with valuetrue
disallowMultipleVarDecl
is only tried with valuetrue
disallowSpaceAfterObjectKeys
is only tried with valuetrue
disallowCommaBeforeLineBreak
is only tried with valuetrue
requirePaddingNewlinesInBlocks
is only tried with valuetrue
disallowNewlineBeforeBlockStatements
is only tried with valuetrue
requireNewlineBeforeBlockStatements
is only tried with valuetrue
disallowSpacesInsideParentheses
is only tried with valuetrue
requireSpacesInsideParentheses
is only tried with valueall
safeContextKeyword
is only tried for value_this
andself
maximumNumberOfLines
is only tried with a fixed set of values (50, 100, 200, 500, 1000, 2000)maximumLineLength
is only tried with a fixed set of values (72, 75, 80, 90, 100, 120) and neither tab size nor exceptionsrequireSpaceBeforeBlockStatements
is only tried with a fixed set of values (1, 2, 3, 4, 5)requireBlocksOnNewline
is only tried with a fixed set of minimum lines (0, 1, 2, 3, 4, 5)validateParameterSeparator
is only tried with a fixed set of values (','
,' ,'
,', '
)validateIndentation
is not tried with all valid configurationsvalidateNewlineAfterArrayElements
is not tried with all valid configurationsjsDoc
is not tried at all
Changelog
0.5.0 (2015-12-15)
- Update to JSCS 2.2.*
0.4.0 (2015-12-02)
- Update to JSCS 2.1.1
0.3.0 (2015-11-29)
- Fix JSCS invocation by setting
maxErrs
toInfinity
- Update to JSCS 2.0
0.2.0 (2015-11-20)
- Don't include contradictory rules
- Better handling of validateIndentation, maximumLineLength, requireAlignedObjectValues, validateLineBreaks, validateParameterSeparator
- Update to JSCS 1.13
0.1.1 (2015-04-25)
- Fix JSCS invocation
- Show errors emitted by JSCS
- Add JSCS check to
npm test
pipeline
0.1.0 (2015-04-22)
- Initial version.
Todo
Fixes
- Handle all different possible values for all rules
- Fold multi-value options back to true
Features
- Emit YAML
- Compare to presets or existing .jscsrc, jscs.json or .jscs.yaml file
- Sort rules in output alphabetically
- Add i18n
- Check which rules checked successfully instead of which rules didn't fail
- Handle rules which failed rarely (for example by interactively proposing to add them to the output)
License
AGPL