Just realized there was some feedback in Slack that wasn't on the PR. Going
to address those issues before merging.

On Thu, Mar 24, 2022 at 10:44 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.
>>>
>>

Reply via email to