Feature #16688
Updated by Dan0042 (Daniel DeLorme) over 4 years ago
I often work with Pathname objects, but when passing them to a system command I find it a bit tedious that they have to be explicitly converted to a String.
```ruby
file = BASE + "config.json"
system(@cmd, file) #=> TypeError (no implicit conversion of Pathname into String)
system(@cmd, file.to_s) #=> works
```
I propose that the system/exec/spawn family of methods should try to convert their arguments using `to_path`, if `to_str` fails. I believe it makes perfect sense, since commandline arguments are so often pathnames.
This includes in/out redirection. `system("ls", out: Pathname.new("file"))` should be valid.