On Tue, 11 Jun 2024 00:38, Pierrick Bouvier <pierrick.bouv...@linaro.org> wrote:
Maybe it could be better if build.rs file was *not* needed for new
devices/folders, and could be abstracted as a detail of the python
wrapper script instead of something that should be committed.
That'd mean you cannot work on the rust files with a LanguageServer,
you cannot run cargo build or cargo check or cargo clippy, etc.
That's why I left the alternative choice of including a manually
generated bindings file (generated.rs.inc)
Maybe I missed something, but it seems like it just checks/copies the
generated.rs file where it's expected. Definitely something that could
be done as part of the rust build.
Having to run the build before getting completion does not seem to be a
huge compromise.
It only checks if it's called from meson, hence it should update the
should choose meson's generated.rs file. Otherwise it falls back to any
manual bindings you have put there that are not checked into git. So
essentially it does what you suggest, I think :)
Yes, vendor-the-world is a different topic than vendor e.g. two
crates such as the dependencies I'm using here.
If there must be a discussion about dependencies, it's probably better
to consider the "worse" case to take a decison about vendoring this or not.
Agreed. To re-cap, my opinion is that vendoring 1-2 small crates is
fine, but any more than that needs rethinking.