UNPKG

parallel

Version:

CLI tool to execute shell commands in parallel, based on GNU parallel command

131 lines (100 loc) 13.6 kB
### Changelog All notable changes to this project will be documented in this file. Dates are displayed in UTC. #### [v2.3.0](https://github.com/flesler/parallel/compare/v2.2.1...v2.3.0) - Improve placeholder handling and README examples [`fa76f36`](https://github.com/flesler/parallel/commit/fa76f367f61d3666737640f2ae3250590969f9aa) - Add {+..} and {+...} placeholders for GNU --plus compatibility [`1ddc917`](https://github.com/flesler/parallel/commit/1ddc91777b5d8be9798a7d37d91d3c7f7d73d972) - Implemet a {##} placeholder, require some refactoring for cleaner buffering support [`775861e`](https://github.com/flesler/parallel/commit/775861e8de2287e435bd43491d8fd2f9940717e3) - Simplify the default --jobs handling for --help [`840ba62`](https://github.com/flesler/parallel/commit/840ba624438a92b3dddcafe1ba7c1b18a9650890) - Improve option combination validation and --block implies --pipe [`e7a4881`](https://github.com/flesler/parallel/commit/e7a4881c7e48007d1dc98720ce87bd6bbcb6c16f) #### [v2.2.1](https://github.com/flesler/parallel/compare/v2.2.0...v2.2.1) - Improve the readme.js code [`74cb1a4`](https://github.com/flesler/parallel/commit/74cb1a46e8123c59cdc76a6818d64502545db6df) - Reorganize and improve 'Differences with GNU parallel' section for accuracy and clarity [`8e78d9a`](https://github.com/flesler/parallel/commit/8e78d9ab3d2930b29116cc9ad9103ed30563daaf) - Split README examples into individual bash blocks for easier copy/paste [`4bab99d`](https://github.com/flesler/parallel/commit/4bab99d32bd67dbe9ffd1e4e57278157277f4a3f) #### [v2.2.0](https://github.com/flesler/parallel/compare/v2.1.0...v2.2.0) - Add the package name and version to the --help [`592ac0d`](https://github.com/flesler/parallel/commit/592ac0d6f9861511de60c4fbe0b87f3c61bf8543) - Move placeholders that are GNU-compliant to the right section [`6307b04`](https://github.com/flesler/parallel/commit/6307b049c850ed0725d08c0009c1977bcd3e5874) - Fix help not getting the options in one case [`3db9936`](https://github.com/flesler/parallel/commit/3db9936faee86e43ed93ba4829f2f01837ea4f52) - The placeholder documentation in --help and README.md are now programmatically generated [`8d5f95c`](https://github.com/flesler/parallel/commit/8d5f95cc81e29c4edafd5f8de6f972254d39a038) - Add {+/} placeholder to count forward slashes (GNU parallel --plus compatibility) [`789d289`](https://github.com/flesler/parallel/commit/789d2897d985c10ff2c88023d19926623ab13455) - Add {+.} placeholder to count dots (GNU parallel --plus compatibility) [`f49b58f`](https://github.com/flesler/parallel/commit/f49b58fc9a92c00f31068fee629784f631d42a96) - Add {trim} placeholder to remove leading/trailing whitespace [`cb4008d`](https://github.com/flesler/parallel/commit/cb4008d40e378267ae5fe9741518b46ad0234123) #### [v2.1.0](https://github.com/flesler/parallel/compare/v2.0.0...v2.1.0) - Add professional badges to README for npm, downloads, license, and GitHub stats [`6e495ee`](https://github.com/flesler/parallel/commit/6e495ee62398731fd624a41d26547237e4e0ae33) - Refactor README generation in help.js and update README with no leading spaces [`df5bf58`](https://github.com/flesler/parallel/commit/df5bf5825e65e738cf42f16d69db9b6236f23186) - Show help when parallel is run with no arguments and no piped input [`2d00685`](https://github.com/flesler/parallel/commit/2d00685fcc05dbc19043a5366a6ea25722343280) ### [v2.0.0](https://github.com/flesler/parallel/compare/1.3.1...v2.0.0) - Add placeholders for double extension handling [`29b4481`](https://github.com/flesler/parallel/commit/29b44819835ead96f3677f91229e5bbc5fcf0e69) - Fix GNU parallel compatibility for {..} placeholder [`bb8a80f`](https://github.com/flesler/parallel/commit/bb8a80fd272976ed56ca75b24f926f958f2bdefe) - Add {len} placeholder for input line character length [`fa8919c`](https://github.com/flesler/parallel/commit/fa8919c99c8319c7d6141117443e79c8a81ceed0) - Add {wc} placeholder for input line word count [`9d67904`](https://github.com/flesler/parallel/commit/9d67904d65e8c364fd3b2709ef3235cdaf846fc9) - Add --tag option to prefix output lines with input arguments [`0b8bedd`](https://github.com/flesler/parallel/commit/0b8bedd0f4a08e8efa1e7f0af424521de533c978) - Use fn.length instead of param property for argument parsing [`5013a79`](https://github.com/flesler/parallel/commit/5013a798f8a01d898d1868abd47aa4fcefbdf736) - Extract semantic parameter names from function signatures for help output [`b5eba0e`](https://github.com/flesler/parallel/commit/b5eba0e4424f06f87f26535e2cfdf5ceed39702f) - Implement --joblog with proper stream closure when jobs finish [`8172486`](https://github.com/flesler/parallel/commit/8172486a3dfd819ce45c5b7f25386b80c254a9aa) - Fix critical bug in ::: syntax causing process to hang [`994f6bb`](https://github.com/flesler/parallel/commit/994f6bb790ff2639f21a6f855dfa040df6051ac3) - Add compare.sh script to test against GNU parallel [`7ec772a`](https://github.com/flesler/parallel/commit/7ec772af16ff5fb3f4149951aba1fda3bd747f32) - Fix verbose logging in pipe mode to avoid redundant command output [`f212416`](https://github.com/flesler/parallel/commit/f212416ff2d4b109e324e7995b2a0aa89264826c) - Convert all leading tabs to 2 spaces for consistent indentation [`04e708d`](https://github.com/flesler/parallel/commit/04e708de31373b1a71d2522504824443433011d6) - Remove outdated TODOs and refactor dry-run to eliminate code duplication [`10316b5`](https://github.com/flesler/parallel/commit/10316b5975bab500071c8fd78450e04be7ae5d35) - Implement --shuf option and update documentation [`8c8df24`](https://github.com/flesler/parallel/commit/8c8df247fccc5fb183e26d28040f037b45fcfc64) - Create an update-readme.js script that auto-updates the README.md based on --help [`01996f8`](https://github.com/flesler/parallel/commit/01996f85ca341d8a0175dc6bad587920a3fefd1f) - Add --quote-all alias for --quote option [`ad50d49`](https://github.com/flesler/parallel/commit/ad50d49ed6a65ac13fea5bd767edba7e0d7d0238) - Clean up completed TODO comments and simplify code [`07b4699`](https://github.com/flesler/parallel/commit/07b469926e4fe2a4326a6989809286daab6aee9e) - Remove all trailing semicolons for cleaner code style [`ae10ee4`](https://github.com/flesler/parallel/commit/ae10ee4eee53c782a89be2849ccbc4b2cc926436) - Refactor opts.js to use single module.exports object [`27c1adc`](https://github.com/flesler/parallel/commit/27c1adcd49669f12eefc442d00c96a6a883f95f0) - Replace all var declarations with let/const for ES6 compliance [`889d86a`](https://github.com/flesler/parallel/commit/889d86a808066656078675b02b2d57644bc27842) - Modernize code with template literals and arrow functions [`00c99ab`](https://github.com/flesler/parallel/commit/00c99ab13c5fd72f5695648d81a9687ed5f2e07c) - Standardize opts properties to match camelCase CLI options and add GNU parallel compatibility features [`254c166`](https://github.com/flesler/parallel/commit/254c16642a9876cd903ff9b02b2199175d8b3ba1) - Update README with new options and improved help format [`4f77e0e`](https://github.com/flesler/parallel/commit/4f77e0ee330b18eac867d830b160dad2ade7dba6) - Add :::: file syntax support for reading arguments from files [`8d116b2`](https://github.com/flesler/parallel/commit/8d116b21a66c6022c3c96ef2440a198e48f26df8) - Add -t/--print-commands flag for GNU parallel compatibility [`d810936`](https://github.com/flesler/parallel/commit/d810936cb97da4201f418167958063f34729c49d) - Add --block option for size-based input splitting in pipe mode [`83e99bc`](https://github.com/flesler/parallel/commit/83e99bc2f4dc40f07d39eee45226536a88847394) - Update README with new GNU parallel compatibility features [`c8d40b6`](https://github.com/flesler/parallel/commit/c8d40b6c4cdcea46666ac661c107c326d3ad693e) - Change default jobs from hardcoded 20 to CPU count with CPUs display in help [`3afc8a5`](https://github.com/flesler/parallel/commit/3afc8a554c212b7f051dd8d111ee5515fb06e4e3) - Polish examples to showcase new features and ensure all work correctly [`da4b644`](https://github.com/flesler/parallel/commit/da4b644bc1ff590d0ebc5b03fe61f87dae10ca46) - Add .nvmrc [`9eb7796`](https://github.com/flesler/parallel/commit/9eb7796f5b557a707b49c94a4c1e37ae10c9bafb) - Rename update-readme.js to readme.js [`23ebd67`](https://github.com/flesler/parallel/commit/23ebd677ebf5091eb7ae0a833381ce3cd73ba6b2) - Add a new changelog.js script [`fff7d5a`](https://github.com/flesler/parallel/commit/fff7d5aecd8cd00fd991ff0abdd411a3988a1b6a) - Add a new release.js script [`d341e10`](https://github.com/flesler/parallel/commit/d341e10c892bf21bd2f38fd7c0b4b9508394a55d) #### [1.3.1](https://github.com/flesler/parallel/compare/1.3.0...1.3.1) #### [1.3.0](https://github.com/flesler/parallel/compare/1.2.0...1.3.0) - Add various new useful placeholders, that are not in the GNU version [`8d3515c`](https://github.com/flesler/parallel/commit/8d3515ca91b7d2f14eb3369c6c717003289aa3c7) #### [1.2.0](https://github.com/flesler/parallel/compare/1.1.1...1.2.0) - Closes #1 [`#1`](https://github.com/flesler/parallel/issues/1) #### [1.1.1](https://github.com/flesler/parallel/compare/1.0.10...1.1.1) - WIP 1.0.11 [`d895428`](https://github.com/flesler/parallel/commit/d895428e187f49c472e6fdcafeb74596a1c6753d) - Changed the workaround to handle stdin not being piped in [`2c64ee0`](https://github.com/flesler/parallel/commit/2c64ee0bbec45f8e39bbe882fa8ccbe9d3711983) - Improved some cryptic variable names [`98644ca`](https://github.com/flesler/parallel/commit/98644ca552b7ceff486be5142103c0fc4f6eee7c) - 1.1.1 ready for release [`c83b70d`](https://github.com/flesler/parallel/commit/c83b70de221b169796cdf44fd7751fe2ffcd10fd) #### [1.0.10](https://github.com/flesler/parallel/compare/1.0.9...1.0.10) - WIP 1.0.10 [`f3605b9`](https://github.com/flesler/parallel/commit/f3605b9e3d7f1dd07239c3f94f903e21e9acbe73) - Each argument after a ::: is now a separate line [`3833d46`](https://github.com/flesler/parallel/commit/3833d46a6fbb903b2662f66e6930439f200d968e) #### [1.0.9](https://github.com/flesler/parallel/compare/1.0.8...1.0.9) - NPM doesn't accept 1.0.8.1, using 1.0.9 then [`0d2e5e6`](https://github.com/flesler/parallel/commit/0d2e5e6174390b24bc3d33c85bad569a038e1013) #### [1.0.8](https://github.com/flesler/parallel/compare/1.0.7...1.0.8) - Removed NPM badge, looks ugly [`60a3461`](https://github.com/flesler/parallel/commit/60a3461f0736d524caab986cbc258836290f59bc) - Changed --trim help description [`e2e70b0`](https://github.com/flesler/parallel/commit/e2e70b08e675a39b5163eeb79610f293f7a1f505) - Fixed markdown error on README [`4a98ad2`](https://github.com/flesler/parallel/commit/4a98ad2f66b6e1c5a1ad153423bea14a56abbbe0) - `--jobs=0` is now supported for an unlimited amount of parallel jobs [`c0083f3`](https://github.com/flesler/parallel/commit/c0083f34d733d294e63f9885da7b5668ed4c0803) - Alternative solution for input bug [`ec32d19`](https://github.com/flesler/parallel/commit/ec32d197ded48168b3b4384869db2dd5e1620d55) #### [1.0.7](https://github.com/flesler/parallel/compare/1.0.6...1.0.7) - Added and reordered ToDos [`c418f22`](https://github.com/flesler/parallel/commit/c418f22e42f6d73e79c33e81a8c176d7470a8899) - Supporting more options formats and added alias for --dry-run [`4bc5693`](https://github.com/flesler/parallel/commit/4bc56938a6e128ec2fdde2ffd8af491f89c6f62f) #### [1.0.6](https://github.com/flesler/parallel/compare/1.0.5...1.0.6) - gitignore [`bd8910e`](https://github.com/flesler/parallel/commit/bd8910ec10d600cece8183ff5a22877dca102326) - Added support for --dry-run option, resulting commands are printed to stdout within runnning. Incompatible with --pipe [`5efcff6`](https://github.com/flesler/parallel/commit/5efcff6f0a016173ac00efc87a34a43bbbd96526) #### 1.0.5 - Initial commit [`ba74ecd`](https://github.com/flesler/parallel/commit/ba74ecd9200a637d2fc098ab9bfe7234a2141a4d) - First version [`a866955`](https://github.com/flesler/parallel/commit/a866955338c95c11274a7d35a01062962fe918b5) - Escaping semicolon [`ad3f182`](https://github.com/flesler/parallel/commit/ad3f182193eb365edecb0b9dcedef1738e04c065) - Lots of changes, brought back to 1.0.0 to publish as parallel [`af5ef5e`](https://github.com/flesler/parallel/commit/af5ef5e21065b409fb6f5f07424a273c146ec9ac) - Reworded 'replacement' as placeholder, is a more suitable name [`03ca045`](https://github.com/flesler/parallel/commit/03ca0455ed0b7d71f8af3cbd8e0627afa7bcf63c) - Added support for --bg option, jobs are run detached and main process can exit [`73e22ed`](https://github.com/flesler/parallel/commit/73e22ed9d18df52165afd37547bef7f208677d6d) - Added ToDos [`99a81b3`](https://github.com/flesler/parallel/commit/99a81b3717df0f40e0003386a75f6ed86a726fab) - Implemented --delay [`5fb24d7`](https://github.com/flesler/parallel/commit/5fb24d7d14a83be8308df8ed86bce3c45b9b4c41) - Added support for --timeout [`475677a`](https://github.com/flesler/parallel/commit/475677a5926ee140e1436c49709b62e7c20fbaef) - Added npm run release for fancy automated releases with tags [`3f738d6`](https://github.com/flesler/parallel/commit/3f738d6ba7bc8b74cc117ccc788e6ef064bcf968) - Added NPM badge [`e6a7a93`](https://github.com/flesler/parallel/commit/e6a7a930e65d55040f2543459b84d0252e7c276f) - Description [`ba74b96`](https://github.com/flesler/parallel/commit/ba74b9670adcb24aa2989b7bf9ad58c400dde8d6) - Description [`c5a9cdc`](https://github.com/flesler/parallel/commit/c5a9cdcf2b8942aed3a20d316e9dcba66d4760af) - Implemented positional placeholders to split input line in columns [`0942218`](https://github.com/flesler/parallel/commit/09422183e27ba72992c4956ca5010581ada45022)