A C++ high level library for running shell processes
This is a bugfix release.
exceptions::os_error
now contains the error code and error messages from syscallsfile_descriptor
creates files with the correct umask and permissionsFD_CLOEXEC
are closed by the OS when a child process is executedFD_CLOEXEC
This is the first release of subprocess
after its announcement on reddit last week.
_cmd
literal to construct subprocess::command class.operator|
for subproess::cmd is now overloaded for std::string
. This eliminates the need for adding _cmd
to every command while piping.descriptor_ptr_t
and descriptor_ptr
helper types to create descriptorscommand::run
descriptor
framework. All I/O from posix_process
is done using descriptors. Users can now add their own descriptors by deriving from odescriptor
or idescriptor
classes.posix_spawnp
is used in place of exec()
+ fork()
to allow for greater flexibility while porting to windows.subprocess::command
now excepts strings instead of an initializer_list
of char*
. Automatic shell expansion is performed on the string using wordexp
syscall.subprocess::in
, subprocess:out
, and subprocess:err
now correspond to tags that allow you to point posix_process file descriptors to each other.subprocess::command
can no longer be constructed using a delimited initializer list of arguments