That seems reasonable. Great work on the PR. On Thu, Mar 24, 2022 at 10:45 PM Nicholas Nezis <[email protected]> wrote:
> Ok, I think this PR has been around long enough and has a couple other sets > of eyes on it. I made tweaks based on the feedback. I will merge it later > tonight. Feel free to take a final look. Thanks to those who helped review > the changes. > > https://github.com/apache/incubator-heron/pull/3779 > > On Sun, Feb 27, 2022 at 4:38 PM Nicholas Nezis <[email protected]> > wrote: > > > Ok, so a lot more Bazel related cleanup on that PR. > > https://github.com/apache/incubator-heron/pull/3779 > > > > 1. Removed Docker specific `bazel.rc` > > a. No longer needed now that we have JDK 11 and it works better in > Docker > > 2. Removed Travis specific cross-compile toolchain > > a. No longer needed now that Travis CI is using a modern OS version > > 3. Removed Travis specific `bazel.rc` > > a. I don't think this is needed. This was due to the old OS and limited > > VM resources. Can put back if necessary, but the tests seem to be passing > > just fine. Even faster than before. > > 4. Removed ancient `Applatix` CI scripts > > a. Not used or maintained. They were acquired by Intuit in 2018. > > 5. Updated documentation > > a. Including a switch from installing Bazel to Bazelisk. This will help > > with documentation maintenance. > > > > On Sun, Feb 27, 2022 at 2:23 AM Nicholas Nezis <[email protected] > > > > wrote: > > > >> While working through a bug we ran into with MacOS failing to compile, I > >> got a better understanding of some of the Bazel settings. In another > thread > >> with Josh, who is compiling on the Apple M1 for the first time, he ran > into > >> issues with Linux vs OSX. > >> > >> It dawned on me that we were explicitly setting the config to modify a > >> number of settings. Some of them include the following items: > >> 1. Platform libraries (Linux C libraries) > >> 2. Platform + CPU decision on which binary to use (Helm binary) > >> 3. OS decision (MacOS unique steps vs Linux as the default) > >> 4. Optimization setting (We just hardcoded to C03, but Bazel reported as > >> "fastbuild") > >> 5. Stylecheck toggle (darwin vs darwin_nostyle) > >> > >> In a recent PR, I collapsed all of the Linux flavors to a standard > >> `--config=linux`. This was born out of my frustration with the build > >> scripts not jiving with Bazel standards. But it was not actually solving > >> the problem. I'm hoping that this PR will help resolve some of the > issues. > >> > >> https://github.com/apache/incubator-heron/pull/3779 > >> > >> Changes: > >> 1. No longer need to set `--config`. Bazel will detect the OS > >> automatically. > >> 2. Default is `fastbuild`, but you can add `-c opt` to build optimized > >> build. > >> a. You can even build both side by side with Bazel making a folder > like > >> darwin-fastbuild and darwin-opt > >> 3. If you want to run stylecheck, you can add `--config=stylecheck` > >> 4. The Linux libraries (-lm, -lpthread, -lrt) are included in > >> `tools/platform/BUILD` > >> 5. As we add support for ARM, we can add more options in > >> `tools/platform/BUILD` > >> 6. Scripts outside of Bazel were updated to remove `--config`. > >> 7. Scripts outside of Bazel will specify `-c opt` or > >> `--config=stylecheck` when needed. > >> > > >
