Windows fixes for buildifier check, fix and test
This PR includes fixes to support check, fix and test on Windows. Fixes https://github.com/keith/buildifier-prebuilt/issues/88
Tested with bazel 7.2.1 and both --noenable_runfiles and --enable_runfiles All validations performed with --windows_enable_symlinks enabled
for buildifier.test to work, I used the following config. I could not get test to work without specifying workspace and no_sandbox.
buildifier_test(
name = "buildifier.test",
srcs = ["BUILD"],
exclude_patterns = [
"./.git/*",
],
lint_mode = "warn",
no_sandbox = True,
workspace = "WORKSPACE",
)
any way we can verify the previous failure on CI?
@keith @cgrindel I've merged https://github.com/keith/buildifier-prebuilt/pull/90 here. Please would you run this CI?
Expected results: Windows: all tests pass Linux: 1 test fails. 4 of 6 sub-tests pass. 2 fail as the linux path does not do manifest lookups.
How should we handle the linux failure? change the test to ignore that failure and raise an extra defect?
Thanks, Chris
Started CI
@keith thank you. Results as expected. Would to like me to disable the two failing cases for non-windows?
Looks like it failed on Linux but not windows? Maybe misunderstanding what you expected?
I added new cases within my new test for:
buildifier invoke (norunfiles) - passes windows & linux buildifier check (norunfiles) - passes windows, fails linux buildifier fix (norunfiles) - passes windows, fails linux buildifier invoke (w/runfiles) - passes windows & linux buildifier check (w/runfiles) - passes windows & linux buildifier fix (w/runfiles) - passes windows & linux
The linux failures are demonstrating existing problems (or limitations), and are not addressed by this PR.
If you agree, I can I open a new defect and disable these two cases on linux for now. Most people won't hit these as no runfiles on linux is uncommon. I won't have time to work on these.
Cheers, Chris
I have opened #91 for the linux issue, updated the test cases.
@keith @cgrindel Please rerun CI, I'd expect all to pass now.
I just approved CI.
@cgrindel could you rerun this one?
Awesome! Windows & Linux are clean... Mac seems to be waiting on a runner... What are next steps with this PR?
I was about to work on a fix but found out you already did it. May I ask what remains to be done here?