Closed
Description
Use cases
- Specifying features (see Allow CommandCargoExt to pass build arguments #34)
- Depending on which we keep as default, either (see
main_binary
should reuse the caller's target #4)- Specify the target to get cross-compilation coverage and improve cross-compilation test performance
- Don't specify the target to improve naive-compilation test performance
Considerations
- The primary use case of
assert_cmd
is testing Rust binaries, so we should help those users - An entire cargo API is orthogonal to
assert_cmd
and would be best to be stablized outside ofassert_cmd
Proposal
- Mirror the concept of
cargo run
in escargot but viaCargoBuild
CargoBuild
would have a.run()
method that would return aCargoRun
CargoRun
would have.path()
and.command()
methods.
- Still provide
CommandCargoExt
but point people toescargot
for any custom behavior - Deprecate the cargo path functions and instead point people to
escargot
for those use cases.- Create an issue for them to be deleted as part of the 1.0 milestone
At this point, CommandCargoExt
is primarily serving a low-effort path for a "getting started" user while serving as an example of how to do more complex things (via code) and pointing to more complex APIs (via docs)
Open Issues
- What should be the default for
main_binary
should reuse the caller's target #4