Internal changes

PiperOrigin-RevId: 211458505
diff --git a/src/TulsiGenerator/BazelSettingsProvider.swift b/src/TulsiGenerator/BazelSettingsProvider.swift
index 82e7cd4..ede387b 100644
--- a/src/TulsiGenerator/BazelSettingsProvider.swift
+++ b/src/TulsiGenerator/BazelSettingsProvider.swift
@@ -148,11 +148,19 @@
   static let tulsiNonSwiftFlags = BazelFlagsSet(
       release: BazelFlags(build: ["--apple_generate_dsym"]))
 
+  /// Universal flags that apply to all Bazel invocations (even queries).
   let universalFlags: BazelFlags
+
+  /// Cache-able flags for builds.
   let cacheableFlags: BazelFlagsSet
+
+  /// Non-cacheable flags for builds. Avoid changing these if possible.
   let nonCacheableFlags: BazelFlagsSet
 
+  /// Flags used for targets which depend on Swift.
   let swiftFlags: BazelFlagsSet
+
+  /// Flags used for targets which do not depend on Swift.
   let nonSwiftFlags: BazelFlagsSet
 
   public convenience init(universalFlags: BazelFlags) {
diff --git a/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift b/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
index feabb33..7f9024c 100644
--- a/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
+++ b/src/TulsiGenerator/BazelWorkspaceInfoExtractor.swift
@@ -53,11 +53,15 @@
 
   init(bazelURL: URL, workspaceRootURL: URL, localizedMessageLogger: LocalizedMessageLogger) {
     let universalFlags: BazelFlags
+    // Install to ~/Library/Application Support when not running inside a test.
     if let applicationSupport = ApplicationSupport() {
       let tulsiVersion = Bundle.main.infoDictionary?["CFBundleVersion"] as? String ?? "UNKNOWN"
       let aspectPath = try! applicationSupport.copyTulsiAspectFiles(tulsiVersion: tulsiVersion)
-      universalFlags = BazelFlags(build: ["--override_repository=tulsi=\(aspectPath)"])
-    } else {
+      universalFlags = BazelFlags(
+        // TODO(tulsi-team): See if we can avoid using --override_repository.
+        build: ["--override_repository=tulsi=\(aspectPath)"]
+      )
+    } else {  // Running inside a test, just refer to the files directly from TulsiGenerator.
       let bundle = Bundle(for: type(of: self))
       let bazelWorkspace =
         bundle.url(forResource: "WORKSPACE", withExtension: nil)!.deletingLastPathComponent()
diff --git a/src/TulsiGenerator/Scripts/bazel_build.py b/src/TulsiGenerator/Scripts/bazel_build.py
index 0f4cc36..0bea027 100755
--- a/src/TulsiGenerator/Scripts/bazel_build.py
+++ b/src/TulsiGenerator/Scripts/bazel_build.py
@@ -1673,6 +1673,9 @@
 if __name__ == '__main__':
   _LockFileAcquire('/tmp/tulsi_bazel_build.lock')
   _logger = tulsi_logging.Logger()
+  logger_warning = tulsi_logging.validity_check()
+  if logger_warning:
+    _PrintXcodeWarning(logger_warning)
   _timer = Timer('Everything', 'complete_build').Start()
   signal.signal(signal.SIGINT, _InterruptHandler)
   _exit_code = main(sys.argv)
diff --git a/src/TulsiGenerator/Scripts/tulsi_logging.py b/src/TulsiGenerator/Scripts/tulsi_logging.py
index f330634..9b72cb2 100755
--- a/src/TulsiGenerator/Scripts/tulsi_logging.py
+++ b/src/TulsiGenerator/Scripts/tulsi_logging.py
@@ -20,6 +20,11 @@
 import sys
 
 
+def validity_check():
+  """Returns a warning message from logger initialization, if applicable."""
+  return None
+
+
 class Logger(object):
   """Tulsi specific logging."""