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 visible (Hide)

putout - putout v35.0.3

Published by coderaiser 9 months ago

🔥 feature

  • 2dce8613e putout: @putout/processor-css v9.0.0
  • 073af93ba @putout/processor-css: drop support of 🐊 < 35
  • 0da8506b9 @putout/processor-css: do not emit align warnings
putout - putout v35.0.2

Published by coderaiser 9 months ago

🔥 feature

  • 08e9ef8c5 putout: @putout/plugin-apply-template-literals v3.0.0
  • 9d5175d22 @putout/plugin-apply-template-literals: drop support of node < 18
  • 792400820 @putout/plugin-apply-template-literals: exclude newline
  • a0a54c369 @putout/plugin-remove-useless-escape: add support of "./"
  • e1d50e619 @putout/engine-parser: espree v10.0.0
putout - putout v35.0.1

Published by coderaiser 9 months ago

🐞 fix

  • d60069e1c eslint-plugin-putout: @typescript-eslint/no-un: disabled while ESLint v9 supported

🔥 feature

  • 54413dae8 @putout/test: strip-ansi v7.1.0
  • e97fb0e7d putout: @putout/processor-json v9.0.0
  • 49ca01f7c root: supertape v10.0.0
  • 52a060979 @putout/plugin-minify: drop support of 🐊 < 35
  • c4438f7fd @putout/plugin-minify: convert-if-to-logical: ConditionalExpression inside IfStatement (coderaiser/minify#118)
putout - 🐊Putout v35

Published by coderaiser 9 months ago

image

ॐ भूर्भुवः स्वः
तत्सवितुर्वरेण्यं
भर्गो देवस्य धीमहि
धियो यो नः प्रचोदयात् ॥

bhūr bhuvaḥ suvaḥ
tat savitur vareṇyaṃ
bhargo devasya dhīmahi
dhiyo yo naḥ pracodayāt

Gayatri Mantra, Rigveda 3.62.10

Hi folks! The time is come for a next major release of 🐊Putout 🎉 !

More robust UI with help of Worker Threads

Installing this release you can see that UI became more robust thanks to worker threads, before this change progress bar some times lag and twitched, because of lots of synchronous works, from now that is not the case!

If you have any trouble with worker threads create issue and use:

putout . --no-worker

Welcome @putout/engine-reporter

A new guy on Engines field! What it does is all the stuff related to reporting using formatters.

RedLint became more powerful

image

redlint linter for Filesystem now has ability to convert JavaScript to JSON and JSON to JS.

image image

That's all for now, have a good day 🦏 !

🔥 feature

  • 29ca0a9f0 @putout/engine-reporter: move out write
  • 33c960d65 @putout/engine-reporter: add
  • 7538de2df putout: move out reporter
  • f93ae10d3 putout: bin: move out subscribe
  • db8be311d putout: add ability to disable worker with --no-worker
  • 8337d1f5f do not use web worker when --raw used
  • 61d704b52 putout: web worker: graceful shutdown
putout - putout v34.11.0

Published by coderaiser 9 months ago

🔥 feature

  • 27b2f7bda putout: add trace support
  • 286e90e7b @putout/plugin-promise: convert-new-promise-to-async: exclude resolve inside event listener'
putout - putout v34.10.0

Published by coderaiser 9 months ago

🐞 fix

  • 689e986ac @putout/operator-filesystem: readFileContent: emoji
  • d5bef6440 @putout/operator-filesystem: convert to base64 afte read

🔥 feature

  • 8c36c77e3 putout: @putout/processor-yaml v8.0.0
  • 779e85997 @putout/processor-yaml: drop support of node < 18
  • 4198df596 @putout/processor-yaml: @putout/operator-json v2.0.0
  • 4bdcd9494 putout: @putout/processor-markdown v12.0.0
  • f65d5538e @putout/processor-markdown: @putout/operator-json v2.0.0
  • b3d4a195e @putout/processor-markdown: drop support of node < 18
  • 71ebf7b17 putout: @putout/processor-json v8.0.1
  • 2c70a57a2 @putout/processor-json: drop support of node < 18
  • 5e464f57b @putout/processor-json: @putout/operator-json v2.0.0
  • 84268609b @putout/plugin-filesystem: @putout/operator-json v2.0.0
  • c0de3441e @putout/operator-match-files: @putout/operator-json v2.0.0
  • fec0e73f4 @putout/operator-filesystem: @putout/operator-json v2.0.0
  • b0bbe2d63 @putout/engine-runner: @putout/operator-json v2.0.0
  • de728d73c @putout/processor-ignore: @putout/operator-json v2.0.0
  • 24cb464df putout: @putout/processor-ignore v6.0.0
  • fe125757c @putout/processor-ignore: drop suppoort of node < 18
  • 535400cef putout: @putout/operator-json v2.0.0
  • 700d3fae6 @putout/processor-filesystem: @putout/operator-json v2.0.0
  • 52579a7f5 @putout/operator-json: drop support of node < 18
  • e40275667 @putout/processor-filesystem: rm duplicate name declaration
putout - putout v34.9.1

Published by coderaiser 10 months ago

🐞 fix

  • aaa62dc27 putout: esm: simplify

🔥 feature

  • 7bf62e83d putout: @putout/plugin-merge-duplicate-imports v11.0.0
  • 2e3683246 @putout/plugin-merge-duplicate-imports: drop support of node < 18
  • b3f9373b4 @putout/plugin-merge-duplicate-imports: rename: add
putout - putout v34.9.0

Published by coderaiser 10 months ago

🔥 feature

  • f690349f2 putout: ESM: add ability to use methods
  • bb24a0751 @putout/engine-parser: @putout/printer v8.0.0
putout - putout v34.8.1

Published by coderaiser 10 months ago

🔥 feature

  • 1404d5292 putout: @putout/plugin-remove-unused-expressions v8.0.0
  • 08200f1f2 @putout/plugin-remove-unused-expressions: drop support of node < 18
  • cfe2ade11 @putout/plugin-remove-unused-expressions: exclude IIFE (#198)
  • 4eea6575a root: eslint-plugin-n v17.0.0-0
  • f2f7fe931 @putout/plugin-for-of: for-each: exclude VariableDeclarator (#196)
putout - putout v34.8.0

Published by coderaiser 10 months ago

🐞 fix

  • 2f66f5f35 @putout/plugin-minify: merge-loops: add
  • fd73cb65c @putout/plugin-remove-debugger: description

🔥 feature

  • e7b749180 @putout/plugin-minify: merge-loops: add
  • 3d618625b @putout/plugin-convert-label-to-object: exclude empty BlockStatements
  • ef61a3b8e putout: @putout/plugin-convert-label-to-object v1.0.0
  • 4a63f5f2e @putout/plugin-convert-label-to-object: exlude functions without LabeledStatement
  • d57c488c2 @putout/plugin-convert-label-to-object: add
  • b68b9dba6 putout: @putout/plugin-remove-debugger v6.0.0
  • 660c8d55d @putout/plugin-remove-debugger: drop support of node < 18
putout - putout v34.7.3

Published by coderaiser 10 months ago

🐞 fix

  • 5218db9ec @putout/plugin-remove-useless-spread: exclude CallExpression

🔥 feature

  • 3b3bb29f1 putout: @putout/plugin-remove-useless-spread v10.0.0
  • b608016bc @putout/plugin-remove-useless-spread: drop suport of node < 18
  • f5524559b @putout/plugin-remove-useless-spread: nested: add
putout - putout v34.7.2

Published by coderaiser 10 months ago

🔥 feature

  • 9ee71ef05 putout: @putout/plugin-simplify-ternary v7.0.0
  • 925775466 @putout/plugin-simplify-ternary: drop support of node < 18
  • 068f8acd5 @putout/plugin-minify: drop support of node < 18
  • d7a80bcc6 @putout/plugin-minify: inlinde: exlucde UpdateExpression (putoutjs/minify#8)
putout - putout v34.7.1

Published by coderaiser 10 months ago

🔥 feature

  • d7f98af0f putout: @putout/plugin-for-of v4.0.0
  • f1bfc6fe7 @putout/plugin-for-of: drop support of node < 18
  • 7f6663f46 @putout/plugin-for-of: for-each: exclude SequenceExpressions (#196)
  • 5e29fba1b @putout/plugin-putout: check-replace-code: VariableDeclarator
  • ab01a71c3 @putout/plugin-filesystem: convert-js-to-json: add
  • ae9418107 @putout/plugin-putout: check-replace-code: __json on the left
  • 610a2ddcf @putout/plugin-putout: check-replace-code: add support of __json
  • 8ada02c25 @putout/test: report: add check for message
  • cd144553a @putout/plugin-filesystem: convert-json-to-js: add
  • b3a580827 @putout/operator-match-files: matchers
  • a182931cc root: c8 v9.0.0
  • de6095769 eslint-plugin-putout: synckit v0.9.0
  • 12c3b439e @putout/plugin-eslint: convert-rc-to-flat: add support of rules, parser
putout - putout v34.7.0

Published by coderaiser 10 months ago

🔥 feature

  • 9d1a9829d putout: @putout/plugin-eslint v7.0.0
  • 05c4ea635 @putout/plugin-eslint: drop support of node < 18
  • f6b256120 @putout/plugin-eslint: convert-rc-to-flat: add
  • c6a6c525e @putout/operator-match-files: add ability to save to other file
  • 76ba68031 @putout/plugin-filesystem: convert-simple-filesystem-to-filesystem: add aditional check of filename
  • c97fdd009 @putout/eslint: createPlugin: add support of ESLint v9
  • 9f18cc9f4 @putout/plugin-eslint-plugin: drop support of node < 18
  • d81fe5444 @putout/plugin-eslint-plugin: turn-off-schema: add
  • f5f7b1375 eslint-plugin-putout: add support of ESLint v9
  • 22b13700a @putout/plugin-eslint-plugin: convert-require-resolve-to-require: add
  • a0e5c520b @putout/plugin-eslint-plugin: apply-flat-config-to-rule-tester: add
  • d9608d60d eslint-plugin-putout: typescript: disable redeclere: ESLint v9 (typescript-eslint/typescript-eslint#8171)
  • d2783df9f root: eslint v9.0.0-alpha.0
putout - putout v34.6.0

Published by coderaiser 10 months ago

🔥 feature

  • dbc793d3f putout: @putout/plugin-typescript v6.0.0
  • dd1994388 @putout/plugin-typescript: find-file: ignore
  • 519967dd5 @putout/operator-match-files: add ignore
  • c33b54fd7 @putout/operator-filesystem: parse-simple-filesystem: handle case when directory has no slash at the end
  • 219b52fd4 @putout/plugin-typescript: drop support of node < 18
  • 5b1b22682 @putout/plugin-typescript: find-file: add
  • 3ab3da846 @putout/operator-match-files: add TS support
  • 8d7674458 @putout/plugin-filesystem: remove-vim-swap-file: add progress
  • fe1ff24a0 @putout/plugin-putout: apply-for-of-to-track-file: add
  • dbab77a47 @putout/plugin-filesystem: remove-files: add progress
  • 3e5df8d56 @putout/test: progress: handle the case when no expected passed
  • 87302a420 @putout/plugin-putout: add-await-to-progress: exclude other then tests useages
  • 98c863783 @putout/plugin-nodejs: rename-file-cjs-to-js, rename-file-mjs-to-js: add progress
  • be9586eac @putout/plugin-putout: add-await-to-progress: tape
  • 12ccbf3ad @putout/plugin-tape: add putout test
  • 1ae10e0dc @putout/plugin-tape: add-t-end: do not add when there is async operator
  • aa245567d @putout/plugin-putout: add-await-to-progress: add
  • f4aa0f96e @putout/plugin-putout: add-args: add progress()
putout - putout v34.5.1

Published by coderaiser 10 months ago

🐞 fix

  • 659aa492a @putout/plugin-nodejs: convert-esm-to-commonjs: multiple exports

🔥 feature

  • 9ea716c95 @putout/engine-processor: picomatch v3.0.1
  • a7117084e putout: @putout/formatter-frame v5.0.0
  • ee268e84b eslint-plugin-putout: @eslint/eslintrc v3.0.0
  • c3855a1e7 @putout/formatter-frame: drop suport of node < 18
  • 436183cc3 @putout/formatter-frame: @putout/formatter-codeframe v6.0.0
  • 32a51b3d2 @putout/test: @putout/eslint v3.0.0
  • 0b21b5713 @putout/cli-cache: file-entry-cache v8.0.0
  • b87b93a50 @putout/processor-css: stylelint-config-standard v36.0.0
  • fddbfb959 @putout/plugin-nodejs/convert-esm-to-commonjs: export multiple
  • f6d820a76 @putout/compare: __exports: add
  • a1ceaca1d @putout/plugin-package-json: find-file: use matchFiles instead
  • 54711e9d0 @putout/operator-match-file: Traverser -> Scanner
  • 9a506bc00 @putout/plugin-putout: convert-progress-to-track-file: couple for-of statements
  • 1e99f872b @putout/plugin-putout: convert-progress-to-track: add
  • d375819c1 @putout/plugin-putout: add-track-file: add
  • ab291e0fd @putout/engine-runner: scanner: trackFile
putout - putout v34.5.0

Published by coderaiser 10 months ago

🔥 feature

  • 6cfd715c6 putout: package-json/find-file: enable for .filesystem.json
  • 0c27b18a4 putout: @putout/plugin-package-json v7.0.0
  • 8524b913b @putout/plugin-package-json: convert to ESM
  • 1b29127ab @putout/plugin-package-json: add find-file
  • b5ee6504f @putout/processor-filesystem: @putout/cli-filesystem v2.0.1
  • 1d0057e6e @putout/cli-filesystem: drop support of node < 18
  • 9bec49801 @putout/cli-filesystem: writeFileContent: create directory
putout - putout v34.4.0

Published by coderaiser 10 months ago

🔥 feature

  • 9ad60e41c putout: -i: improve
  • 658e59103 @putout/plugin-filesystem: convert-simple-filesystem-to-filesystem: simplify
  • bac19321a @putout/operator-filesystem: createFile
  • 991448520 @putout/operator-filesystem: createFile with no content
  • 5bdb9288f @putout/operator-filesystem: getFileContent: add
  • 3dc73e9b6 @putout/operator-filesystem: writeFileContent: emoji
  • b7d9c9028 @putout/plugin-filesystem: replace-cwd: from is root
  • c6ddc7fc9 @putout/pluginf-filesystem: export replace-cwd
  • c325ed4e9 @putout/plugin-react-hooks: drop support of node < 18
  • 4f8af0c0b @putout/plugin-react-hooks: declare: useMemo
  • eaa9871c6 @putout/plugin-remove-useless-escape: double quotes inside template
  • 9ab30399d @putout/plugin-filesystem: write-all-files: progress: add
  • f07474267 @putout/plugin-filesystem: replace-cwd: from root
  • 49fa0ab73 @putout/plugin-filesystem: replace-cwd: add progress
  • 313803316 @putout/test: progressWithOptions
putout - putout v34.3.0

Published by coderaiser 10 months ago

🔥 feature

  • 343bf7d8b putout: @putout/cli-choose-formatter v3.0.0
  • 12f580372 @putout/cli-choose-formatter: drop support of node < 18
  • a0e6215fe putout: @putout/cli-cache v3.0.0
  • 026ecf2bd @putout/cli-cache: drop support of node < 18
  • 845dba5b0 putout: @putout/eslint v3.0.0
  • 4a4f269b2 eslint-plugin-putout: @putout/eslint v3.0.0
  • 15c333e64 @putout/test: @putout/eslint v2.4.0
  • 89d1b752c @putout/eslint: drop support of node < 18
  • bd0884317 @putout/processor-css: stylelint-prettier v5.0.0
  • d9467ffe0 @putout/eslint: find-up v7.0.0
  • 215816655 @putout/cli-choose-formatter: find-up v7.0.0
  • 9b0eb42c0 @putout/cli-cache: find-up v7.0.0
  • b2dee82e0 putout: find-up v7.0.0
  • 433114dc0 @putout/engine-runner: scanner: progress: add percent
  • 12908419f @putout/processor-css: align spaces on empty lines
  • 3117a145e @putout/test: progress
  • ef4908d1f @putout/plugin-filesystem: exports: read-all-files
  • 849f1cfcd @putout/plugin-filesystem: read-all-files: progress
  • e916cdf6c @putout/engine-runner: Scanner: progress: file
  • 0f992b4da @putout/plugin-remove-unused-variables: first argument should be always declared and used when arguments count > 1
  • f09f4e316 @putout/plugin-filesystem: wriate-all-files: add
  • 9c2c1fd78 @putout/operator-filesystem: writeFileContent: directory
putout - putout v34.2.1

Published by coderaiser 10 months ago

🔥 feature

  • 3c57c56ee putout: cli: report: handle case when no places passed
  • fffa6857e root: redlint v3.1.2
  • d36abc4e5 putout: @putout/plugin-putout-config v5.0.0
  • 131463cba @putout/plugin-filesystem: read-all-files: add
  • 125690c2d @putout/plugin-putout-config: drop support of node < 18
  • 264d4b3e2 @putout/plugin-putout-config: convert-boolean-to-string: exclude arrays
  • 2cfb08ca7 @putout/plugin-filesystem: convert-filesystem-to-simple-filesystem: empty content
  • 95beb62a9 @putout/operator-filesystem: readFileContent: directory
  • d8f1799ff @putout/plugin-filesystem: report: improve
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