yihua opened a new issue, #750:
URL: https://github.com/apache/hudi-rs/issues/750

   The manylinux wheel build fails because the container's `protoc` is too old, 
so `0.5.0-rc.1` published to PyPI without any Linux wheel and without an sdist.
   
   `before-script-linux` installs protoc with `yum install -y 
protobuf-compiler`. On the manylinux2014 base (CentOS 7) that resolves to 
`protobuf-compiler-2.5.0-8.el7`, and prost-build passes 
`--experimental_allow_proto3_optional`, which protobuf only understands from 
3.12 onward:
   
   ```
   ---> Package protobuf-compiler.x86_64 0:2.5.0-8.el7 will be installed
   ...
   error: failed to run custom build command for `lance-encoding v11.0.0`
     Error: Custom { kind: Other,
       error: "protoc failed: Unknown flag: 
--experimental_allow_proto3_optional\n" }
   ```
   
   This became reachable when lance became a hard dependency of hudi-core. The 
aarch64 step installs protoc the same way and has the same latent problem; it 
never ran because the x86_64 step fails first.
   
   Regular CI runs on ubuntu-latest, where `apt-get install protobuf-compiler` 
gives a current protoc, so nothing exercises the manylinux container until a 
release tag is pushed. By then the crates.io versions are published and cannot 
be reused, so the whole release has to move to a new RC number.
   
   Two things are needed:
   
   - install a protoc that is new enough, rather than the distro package
   - build the wheel in that same container during regular CI, so the break 
surfaces on the pull request
   
   Reproduced locally against `quay.io/pypa/manylinux2014`: the yum package 
gives `libprotoc 2.5.0` and rejects the flag; installing an official protoc 
release gives `libprotoc 36.1` and `lance-encoding v11.0.0` then compiles.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to