Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What topics should we include in the libdatadog developer guide? #596

Open
ekump opened this issue Aug 23, 2024 · 4 comments
Open

What topics should we include in the libdatadog developer guide? #596

ekump opened this issue Aug 23, 2024 · 4 comments
Labels
question Further information is requested

Comments

@ekump
Copy link
Contributor

ekump commented Aug 23, 2024

With more teams actively contributing to libdatadog it is important we establish some guidelines for how to work within the workspace. We are going to put together a libdatadog developer guide to describe best practices and guidelines. The goal of this document is to increase consistency and ultimately make it easier to contribute to libdatadog through describing best practices and suggesting design patterns that can be made common across the myriad crates in our repo. A non-goal of this document is to debate or describe things that can be handled by automated tooling like linters and code formatters.

The goal of this issue is to collect topics that will be covered in the developer guide. Please reply with topics you think should be included. If the reasoning behind the topic is non-obvious please include a quick description about why it's important. And don't worry, if you can't think of something right away we can always add it later.

The point of this particular issue is not to debate the contents of those topics! We will have plenty of time to bikeshed and litigate later!

Topics to be included:

  • TBD
@ekump ekump added the question Further information is requested label Aug 23, 2024
@ekump
Copy link
Contributor Author

ekump commented Aug 23, 2024

Should we include a section about how to return errors via FFI? Or more broadly, some general API (both Rust and FFI) guidelines?

@andrewlock
Copy link
Member

One suggestion (just so we don't end up second class citizens) - installing pre-reqs, building, and testing on Windows 🙂

@ekump
Copy link
Contributor Author

ekump commented Aug 23, 2024

One suggestion (just so we don't end up second class citizens) - installing pre-reqs, building, and testing on Windows

@andrewlock Good idea! We should include setup instructions for MacOS, WIndows, and Linux.

@gleocadie
Copy link
Contributor

gleocadie commented Sep 7, 2024

Should we include a section about how to return errors via FFI? Or more broadly, some general API (both Rust and FFI) guidelines?

Also how to handle error: some of our APIs return a pointer to a string to the client and it's the client responsibility to free the memory (otherwise, there is a memory leak).
Other API don't do that: maybe we should align first the error handling api

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants