Nate Fischer
Nate Fischer
Also see #420 and #651 We should split the current `ShellString` class into `ShellString` (which offers the string-like APIs) and `ShellArray` (offering Array-like APIs). Each class should also have pipe...
Originally filed at https://github.com/shelljs/shx/issues/147 (CC @andrewvarga) Original issue: > It seems using sed works nicely, but if I also want to use the silent argument (-n or --quite or --silent),...
Inspired by #833. We should create a robust solution to ensure each test runs with fresh state, and we successfully cleanup after each test. Right now, some tests can `cd()`...
Once #524 is merged, it would be good to deprecate `shell.exec()` due to its vulnerabilities and bugs. While we can mark it as deprecated in the docs, since it's a...
This would be good to add, allowing users to iterate over the stdout from a command. This can be done in Bash by running: ``` bash for k in $(cat...
As discussed in #497, I think we should consider moving `shjs` into a separate module, setting up its own tests, and making sure we get it right. Once we're satisfied...
We should aim to update error handling across ShellJS: - [ ] Consistent error message format for each command - [ ] Error messages are consistent with Bash - [...
Originally reported here: https://github.com/shelljs/shelljs/issues/64#issuecomment-74310359 (/CC @akras14) ```js var shell = require("shelljs"); shell.mv("test", "/"); $: node test.js shell.js: internal error Error: EACCES, permission denied 'test' at Object.fs.renameSync (fs.js:554:18) at /home/alexk/projects/support/uploader/node_modules/shelljs/src/mv.js:77:8 at...
Looking at [coverage for rm](https://codecov.io/gh/shelljs/shelljs/src/a187bd1b36ce28a5af214607257506ee28e1beb6/src/rm.js) it looks like we're missing quite a bit of coverage surrounding symlinks to directories (see also #795). Let's see if we can improve that. We...
See [the coverage report](https://codecov.io/gh/shelljs/shelljs/src/c16fb7dac9dfec6cec29cfe633daece83a127d47/src/cp.js) We're currently missing line coverage for: - `copyFileSync()` being called on a [non-existent file](https://github.com/shelljs/shelljs/blob/master/src/cp.js#L23) - [Cycles of symlinks](https://github.com/shelljs/shelljs/blob/master/src/cp.js#L119-L123) - `srcFileStat.isSymbolicLink() && srcFileStat.isDirectory()` (logic is [here](https://github.com/shelljs/shelljs/blob/master/src/cp.js#L138) and...