RX0661

Domain: Execution

Error message

%s is a leaf: %s

In the message, %s marks a value that the engine fills in when it raises the error.

The story

You gave a bare path to a builtin that only works on operating system files, and rush stopped to ask which filesystem you meant. Here is the background. In rush, the default filesystem is leafs. A path with no marker addresses a leaf. But leafs does not carry every act. Builtins like chmod, chown, tar, untar, gzip, gunzip, find, du, and csv write belong to the operating system world, with its permissions and archives. So for those, you must say plainly that you want an OS filesystem, using which, a colon, and the name, for example ext4. Without it, rush would have to guess, and quietly sending a leaf path to the operating system is exactly the substitution the design forbids. You asked for leafs by default, and you only get the other kind when you ask for it. The first slot shows the path, and the second shows the builtin and the fix. Add which to the call, naming the filesystem, and give the path as the operating system knows it. Then the act goes where you intended.

Text from the Rush engine's error catalogue.