-
Notifications
You must be signed in to change notification settings - Fork 43
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
Vendor protoc
#62
Comments
I think you should be able to just enable the |
Hmmm, my first attempt to do it that way didn't work, I'll do some more digging, it may well be user error. |
The problem seems to be in pbjson-types:
|
I also met
➜ influxdb_iox git:(main) protoc --version |
Aah, yeah I can see that would be a problem. I would be very happy to review a PR adding this functionality, and get it released, otherwise I can probably find time in the latter part of next week to look into this. I'm afraid I am a little bit underwater at the moment 😅 |
For my problem, can set the following env to solve it.
|
I have similar problem - after update prost-build and pbjson - I can't compile crate without protoc. It is not problem for me personal, but I want transparent compile my crate on end customer computer without installed protoc. env vars can't solve the case |
I can research about solve the protoc (in background, not fast). But I have trouble with build the crates on my laptop: Is any prepare need to start work with the repo? |
Unfortunately this is really a prost issue, not a pbjson issue. I recommend checking out tokio-rs/prost#657 which has some background on the various changes that led to this predicament As far as solutions go, if you wish for users to not need protoc, you will need to not use a
This does not appear to be related to pbjson or even prost, it looks like something is messed up with your build toolchain. Perhaps try re-installing Rust, or perhaps raise an issue on |
Sort of related: would you be open to not requiring |
This change moves pbjson-type's code generation to a manual executable instead of build.rs. Now the generated files are checked into the repo, and users do not need `protoc` to build the pbjson-types crate. This has a slight drawback in that pbjson developers will need to invoke the generator manually after any relevant code-gen changes. This should generally be a worthwhile tradeoff, as several users have encountered trouble with requiring protoc (see influxdata#62). That drawback could potentially be averted with some CI steps to run the generator and check-in the code automatically; this change does not include such automation however.
This change moves pbjson-type's code generation to a manual executable instead of build.rs. Now the generated files are checked into the repo, and users do not need `protoc` to build the pbjson-types crate. This has a slight drawback in that pbjson developers will need to invoke the generator manually after any relevant code-gen changes. This should generally be a worthwhile tradeoff, as several users have encountered trouble with requiring protoc (see influxdata#62). That drawback could potentially be averted with some CI steps to run the generator and check-in the code automatically; this change does not include such automation however.
prost-build has the "vendored" feature so that I need not have
protoc
installed. How hard would it be to add a similar feature to pbjson-build?The text was updated successfully, but these errors were encountered: