# Normally these are ignored, but if you're using a custom
# build of Bazel with a custom --output_user_root value, Bazel
# tries to follow the symlinks of the other builds and finds
# the WORKSPACE, BUILD, etc files and tries to build them.
bazel-rules_python
bazel-bin
bazel-out
bazel-testlogs
# Prevent the convenience symlinks within the examples from being
# treated as directories with valid BUILD files for the main repo.
# Any directory with a WORKSPACE in it should be added here, with
# an entry like `bazel-{workspacename}`
examples/bzlmod/bazel-bzlmod
examples/bzlmod/other_module/bazel-other_module
examples/bzlmod_build_file_generation/bazel-bzlmod_build_file_generation
examples/pip_parse/bazel-pip_parse
examples/py_proto_library/bazel-py_proto_library
tests/ignore_root_user_error/bazel-ignore_root_user_error
