Skip to content

Add support for Rust #85

@alegrey91

Description

@alegrey91

Currently harpoon supports tracing Go projects only.
This is because specifically for unit tests we need to build them in order to trace their syscalls.
A nice improvement would be to bring support also for Rust which works similar to Go with tests management.
What we should do is to implement an interface with at least the Build() method.
Then all the languages will have their own way to build binaries (currently for Go we use: go test -gcflags="all -N -l" -c ./path/to/package -o path/bin_name).
For Rust I've found this discussion that will allow to build its test binaries without running them (https://stackoverflow.com/questions/64397782/how-can-i-build-standalone-test-binary-to-run-under-a-debugger). Specifically the command we should use (needs to be verified) is the follow: cargo test --no-run.
That said, additionally to this, we should add the syscall sets needed for Rust (respectively for static and dynamic binaries at least).
This should bring support for Rust.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is neededquestionFurther information is requested

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions