Comments (6)
Hm; but what would you like me to say? And where?
I cannot for now think of a way that this could be still useful as it is, while at the same time not being potentially dangerous.
That on the technical side. If you feel just changing the message would be enough: where and how would you suggest to put it? If I put it before I even explain what it is, I feel I could scare virtually everybody away from even trying it, by projecting an ominous first impression. I tried to put it quite early, just after explaining how to enter the command into the app...
Or should I put it straight by the title of the app? How to make it prominent enough? "up - a pipe building app, DANGEROUS, DON'T USE IT"?
One thing I'm starting to think of, is that maybe it's not a good idea to use up with commands that could change any permanent state of something (such as writing to files, modifying/deleting them, accessing external web services, etc...). That might be the main message I'd like to try to publish... but not 100% sure about it yet; I'm just starting to think about it; still in an early stage of trying to collect initial thoughts after the public release, and still getting new feedback.
What I'm trying to also say, is that I actually don't think it's that much more dangerous than xargs or bash. In particular, I haven't yet imagined a command one could easily type accidentally, that could be really disastrous. Even after typing "rm", you still need to type something that you want to remove. I can't yet see how this could be done really accidentally. And again, you usually don't pipe anything into "rm". One may want to try doing "xargs rm"; but then again, I don't see how it'd be easy to do accidentally as of now? And if I were to do this purposefully, I'd be careful even when writing this in regular bash; I wouldn't want to try doing it in up at any cost... like I wouldn't try driving a ferrari through a minefield...
With all that said, I'm totally into trying to invent ways to make it safer. I'm super open to ideas, already collecting some in a notebook, will try to think what to do with them further down the road. (E.g. a shortcut key for pausing/unpausing the "immediate execution" mode.) None of them seem 100% bullet-proof however, unfortunately. But neither bash/xargs are... Hm; actually the pausing/unpausing seems a reasonable cop-out, maybe... then one can choose the preferred mode... maybe even "require enter to execute" would be good enough for typical usage? Even if somewhat slower...
from up.
See also: #8
from up.
rm
could be used with another command that would lead to bad things: find . -exec rm ...
and so on. One way to consider this would be for only commands/environments that are idempotent pure, and having that be a whitelist would probably be key and/or combining this with something like linux contexts names, in the form of either docker or whatever container makes sense to share a read-only view of a file system (this could work with OS X as well).
from up.
Do you think it would make sense for me to merge this into #8? Or would you prefer that I'd still do something specific about the warning, even assuming I'm going to approach #8 in some way?
from up.
I think it would be fine to merge with #8
from up.
Ok, cool, thanks!
from up.
Related Issues (20)
- Does it support tailing a file? HOT 3
- add --version option with full credits HOT 3
- add --help option describing usage HOT 2
- Unable to paste text longer than 11 characters HOT 13
- Add delay to unsafe-full-throttle mode HOT 6
- Add tab completion functionality HOT 3
- ZSH integration HOT 3
- terminfo and kitty term HOT 6
- Allow to change colors HOT 3
- Logo time HOT 7
- Use a persistent shell instance, preferably an interactive one HOT 2
- Allow running up with no input HOT 3
- Chinese support got an issue HOT 1
- Make Ctrl-z work
- Make Ctrl-W work to erase the word before the cursor.
- snap package HOT 2
- Safety: ptrace, seccomp, whitelists/blacklists HOT 3
- [idea] diff mode HOT 1
- Input line not scrolling or wrapping when longer than the screen width HOT 1
- Feature Request: Shell Widget
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from up.