putout

🐊 Pluggable and configurable JavaScript Linter, code transformer and formatter with built-in ESLint and Babel support for js, jsx typescript, flow, markdown, yaml and json. Write declarative codemods in a simplest possible way 😏

MIT License

Downloads
3.6M
Stars
646
Committers
23

Bot releases are hidden (Show)

putout - putout v29.8.3

Published by coderaiser over 1 year ago

🔥 feature

  • ad66fa1d8 package: @putout/plugin-convert-to-arrow-function v4.0.0
  • 64a31d1d7 @putout/plugin-convert-to-arrow-function: add support of FunctionExpression used as argument of CallExpression
  • db759c2c1 @putout/plugin-convert-to-arrow-function: use @putout/printer
  • 654ce7a18 @putout/plugin-convert-to-arrow-function: drop support of node < 16
  • b98a62bb7 @putout/plugin-convert-to-arrow-function: report
  • 33064b8c1 @putout/plugin-minify: types: typeof not equal
putout - putout v29.8.2

Published by coderaiser over 1 year ago

🔥 feature

  • 3059b0b13 package: @putout/plugin-regexp v7.0.0
  • a07d4df9a @putout/plugin-regexp: use @putout/printer
  • 32dfe8339 @putout/plugin-regexp: drop support of 🐊 < 29
  • cbfaa37b4 @putout/plugin-regexp: use @putout/printer
putout - putout v29.8.1

Published by coderaiser over 1 year ago

🔥 feature

  • 484a810f6 package: @putout/plugin-new v2.0.0
  • 5797255bb @putout/plugin-new: use @putout/printer
  • 637645d4f @putout/plugin-new: new -> index
  • 0c6220887 @putout/plugin-new: drop support of 🐊 < 29
  • 02b24e6dc @putout/plugin-minify: types: add support of constructors
  • a20d1514e @putout/plugin-minify: types: boolean: exclude BinaryExpressions
putout - putout v29.8.0

Published by coderaiser over 1 year ago

🔥 feature

  • d8b4dea6f @putout/plugin-remove-unused-expressions: use isSimple from operate
  • 08ba21783 @putout/plugin-putout: declare: operate: isSimple: add
  • 78dc29851 @putout/opreate: isSimple: add
  • a88378217 @putout/plugin-logical-expressions: simplify: add support of ExpressionStatement
  • f349bb539 package: @putout/plugin-remove-unused-expressions v6.0.0
  • e8323e469 @putout/plugin-remove-unused-expressions: drop support of 🐊 < 29
  • 9d483a403 @putout/plugin-remove-unused-expressions: add support of LogicalExpressions
  • 9819c33e0 @putout/plugin-minify: add support of couple ExpressionStatements inside IfStatement consequence BlockStatement body
  • da3ba7d76 @putout/plugin-simplify-ternary: value: add support of OptionalChaining
  • ef66d505c @putout/plugin-minify: convert-if-to-logical: add
  • fcc8f3fd2 @putout/compare: vars: improve replacing ExpressionStatement to Expression
  • bd37e8326 @putout/plugin-minify: types: add
  • 315a20b29 @putout/plugin-minify: mangle-names: add
  • 06548d6bf @putout/plugin-apply-template-literals: exclude TemplateLiteral in the middle of BinaryExpression
  • bc067dc3e @putout/engine-parser: flow: autodetect: only on the beginning
  • a7e67d496 @putout/engine-loader: add ability to pass babel plugin implemintation
  • 6acb3e199 @putout/plugin-apply-template-literals: exclude 3 string literals binary expression
  • fc9271ae6 @putout/plugin-conditions: remove-boolean: simplify
putout - putout v29.7.1

Published by coderaiser over 1 year ago

🔥 feature

  • 55956b4f3 package: @putout/plugin-remove-useless-return v5.0.0
  • 1cbf50a95 @putout/plugin-remove-useless-return: drop support of 🐊 < 29
  • ed064bcb5 @putout/plugin-remove-useless-return: drop support of node < 16
  • b8c4473bb @putout/plugin-remove-useless-return: report
putout - putout v29.7.0

Published by coderaiser over 1 year ago

🔥 feature

  • cf3b7a3dc package: @putout/engine-loader v9.0.0
  • 3362cacf8 @putout/engine-loader: add support of globally installed modules (coderaiser/minify#96)
  • 9947bd2f8 package: @putout/engine-parser v6.1.0
  • e71b5a9d4 @putout/plugin-remove-unused-variables: add support of computed ObjectProperty inside Function params ObjectPattern
putout - putout v29.6.0

Published by coderaiser over 1 year ago

🐞 fix

  • 7ea68535e @putout/printer: remove-args: exclude print

🔥 feature

  • 6789b29a2 package: @putout/plugin-promises v10.0.0
  • 02d91f215 @putout/plugin-promises: drop support of 🐊 < 29
  • 73efe5c19 @putout/plugin-promises: use @putout/printer
  • fbd92cdfb @putout/plugin-promises: remove-useless-await: exclude optional chaining
  • ae56b259a package: @putout/plugin-apply-destructuring v7.0.0
  • cf0fee1c3 @putout/plugin-apply-destructuring: drop support of 🐊 < 29
  • 086565a20 @putout/plugin-apply-destructuring: use @putout/printer
  • f3de3bdac @putout/plugin-apply-destructuring: array: exclude first element assignment
  • 0799f46ac @putout/plugin-remove-unused-variables: mark as used all properties before RestElement
  • 4103880ba @putout/plugin-remove-unused-variables: improve support of destructuring assignment
  • b0dbeb0f2 @putout/plugin-minify: add
  • 0600ed687 @putout/engine-parser: add ability to pass options to @putout/printer (#144)
  • 26539236e @putout/plugin-printer: remove-args: improve args check
  • 1eb0b3d9b @putout/plugin-printer: enable remove-args
  • 00b577829 @putout/plugin-remove-empty: pattern: add support of var
  • ca9ddf1ff @putout/plugin-printer: remove-args: add support of maybe
putout - putout v29.5.1

Published by coderaiser over 1 year ago

🔥 feature

putout - putout v29.5.0

Published by coderaiser over 1 year ago

🐞 fix

  • 1757c6ae1 @putout/plugin-convert-optional-to-logical: rm comment

🔥 feature

  • f60550be7 package: escover v3.2.2
  • 37d740eaa putout: improve support of @putout/printer: shebang
  • 20f19c8ed @putout/operate: compute: exclude reassigned ObjectExpressions (#140)
  • acf836d68 @putout/plugin-convert-optional-to-logical: simplify
  • 7ee4cc264 @putout/plugin-convert-optional-to-logical: add
  • cc80a96c9 @putout/plugin-putout: create-test: add support of ESM
putout - putout v29.4.1

Published by coderaiser over 1 year ago

🔥 feature

  • 28d0f1b4e package: @putout/plugin-apply-template-literals v2.0.0
  • 17b92de5f @putout/plugin-apply-termplate-literlas: drop support of 🐊 < 29
  • 88bb5cac1 @putout/plugin-apply-template-literals: add support of CallExpression inside TemplateLiteral
putout - putout v29.4.0

Published by coderaiser over 1 year ago

🐞 fix

  • 3b614c780 @putout/engine-runner: do not recreate missing 'node' in 'path' because it used to determine existense of path in AST

🔥 feature

  • 092c82fb3 package: @putout/engine-runner v16.0.0
  • 8a82eec71 package: @putout/engine-parser v6.0.0
  • 47cb1135d @putout/printer: apply-linebreak: add support of 'indent()', 'write.indent()'
  • 57f285618 @putout/printer: apply-breakline: add support of 'indent()', 'write.indent()'
  • cfb86c9f6 @putout/plugin-react-hooks: remove-react: add
  • 398d0a694 @putout/plugin-putout: improve support of replace-test-message: value -> value, raw
  • 06d07106f @putout/processor-html: use @putout/printer
  • 01888d82d @putout/processor-html: drop support of 🐊 < 29
  • faa704f38 package: @putout/processor-css v7.0.0
  • be7d5da48 @putout/plugin-remove-unused-variables: use @putout/printer
  • a9864ff23 @putout/plugin-remove-unused-variables: improve support of RestElement in ObjectPattern of AssignmentPattern
putout - putout v29.3.0

Published by coderaiser over 1 year ago

🔥 feature

  • b2af4c19b package: @putout/plugin-merge-duplicate-imports v9.0.0
  • 380d7a771 @putout/plugin-merge-duplicate-imports: drop support of 🐊 < 29
  • 8ab240af7 @putout/plugin-merge-duplicate-imports: use @putout/printer
  • 0397f2768 package: @eslint/eslintrc v2.0.2
  • 6371b6c1d package: typescript v5.0.4
  • 4f12e8014 package: @putout/engine-parser v6.0.0
  • 82b651f6a package: @putout/engine-processor v7.0.0
  • a20a5fc94 package: @putout/engine-loader v8.1.0
  • 8506675e8 package: @putout/processor-css v7.0.0
  • ef9019178 @putout/processor-css: drop support of 🐊 < 29
  • ddda321f6 package: stylelint-config-standard v33.0.0
  • 712736d07 package: stylelint v15.6.0
  • a09971b90 @putout/processor-css: use @putout/printer
  • ef4ea8d86 package: yaml v2.2.2 (https://security.snyk.io/vuln/SNYK-JS-YAML-5458867)
  • 2821594aa @putout/plugin-printer: add
  • 1096958c5 @putout/plugin-remove-iife: simplify
  • f78c2dd3b @putout/engine-runner: add ability to handle case where Statement put in place of Expression
putout - putout v29.2.5

Published by coderaiser over 1 year ago

🐞 fix

  • 903adc958 @putout/eslint: create-plugin: createGetSpaceBeforeNode -> createGetSpacesBeforeNode

🔥 feature

  • b5f7edc97 package: @putout/plugin-github v5.0.0
  • 64492ce4b @putout/plugin-github: use @putout/printer
  • 2194abd6f @putout/plugin-github: drop support of 🐊 < 29
  • 94a047988 @putout/plugin-github: set-node-versions: add support of node v20
  • 115d87438 eslint-plugin-putout: safe: disable maybe/noop
  • 2a8fcf237 @putout/plugin-maybe: apply @putout/printer
  • d21b72024 @putout/processor-markdown: use @putout/printer
  • 8cfba34d8 @putout/plugin-typescript: use @putout/printer
  • 06e5c18fd @putout/operator-add-args: improve declare of arguments
  • c5b045452 eslint-plugin-putout: jsx: disable no-extra-parens
  • 45d2212c0 @putout/plugin-react-hook-form: use @putout/printer
  • e3370c1be package: @putout/engine-parser v6.0.0
  • c3e4e7a33 @putout/test: eslint: noProcess: add ability to override
  • 25351d404 @putout/engine-loaders: improve validation message: ☝️ Looks like plugin name type is not 'string', but: 'function'
  • df76013a0 @putout/plugin-putout: create-test: add support of shorthand property
putout - putout v29.2.4

Published by coderaiser over 1 year ago

🐞 fix

  • 0b24d68f2 @putout/processor-markdown: drop newline at eof of JSON

🔥 feature

  • e8d1ada1f package: @putout/processor-markdown v9.0.0
  • ef1a5a8ca @putout/processor-markdown: drop support of 🐊 < 29
  • f732db953 package: @putout/processor-json v6.0.1
  • 9a40166c7 @putout/processor-json: add newline at eof when missing
putout - putout v29.2.3

Published by coderaiser over 1 year ago

🔥 feature

  • c771cd99a package: @putout/processor-yaml v5.0.0
  • 575f41e09 @putout/processor-yaml: drop support of 🐊 < 29
putout - putout v29.2.2

Published by coderaiser over 1 year ago

🐞 fix

  • d5cb1718d @putout/plugin-putout: create-test: add: array of tuples
  • 85b44a414 @putout/test: noTransform: update source fixtures

🔥 feature

  • 69324e88f package: @putout/processor-ignore v4.0.0
  • ad4ef3be2 package: @putout/processor-json v6.0.0
  • a4abdc2ac eslint-plugin-putout: json: \n eof, markdown: never \n eof
  • e9b093570 @putout/processor-json: drop support of 🐊 < 29
  • 74889c2a7 @putout/processor-ignore: add \n at eof
  • 892fb2a66 @putout/processor-json: add \n at eof
  • 4f4042b31 @putout/printer: create-test: add
  • df545f3dc @putout/operator-add-args: report quotes
putout - putout v29.2.1

Published by coderaiser over 1 year ago

🐞 fix

  • 57300440e putout: printer

🔥 feature

  • ffbc87d77 @putout/test: add ability to pass options
  • ad3d99815 @putout/test: add ability to pass options
  • 339f9e4a5 @putout/plugin-remove-empty: import: report
  • e076e3d45 @putout/test: add support of PUTOUT_PRINTER
putout - putout v29.2.0

Published by coderaiser over 1 year ago

🔥 feature

  • 94717fe16 package: @putout/engine-parser v6.0.0
  • 875c96303 @putout/egine-parser: add ability to override printer and use: babel or putout instead of recast
putout - putout v29.1.14

Published by coderaiser over 1 year ago

🔥 feature

  • 7338e39e3 package: @putout/plugin-simplify-ternary v5.0.1
  • 0cb227d0a @putout/plugin-simplify-ternary: exclude fixture
  • 36d691997 @putout/plugin-simplify-ternary: drop support of 🐊 < 29
  • d87230d33 @putout/plugin-simplify-ternary: value: exclude jsx
putout - putout v29.1.13

Published by coderaiser over 1 year ago

🔥 feature

  • 959aa22e0 package: @putout/plugin-logical-expressions v2.0.0
  • 6a608aaf3 @putout/plugin-logical-expressions: drop support of 🐊 < 29
  • 4bc538c94 @putout/plugin-logical-expressions: simplify: add suport of not equal negation
Package Rankings
Top 1.65% on Npmjs.org
Badges
Extracted from project README
NPM version Build Status Coverage Status DeepScan putout npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm npm